GitHubについてまとめています。
GitHubとは
GitHubとは、ソースコードのホスティングができるサービス。公開する(public)、公開しない(private)に限らず、無料で利用可能です。
【関連記事】
▶GitHubとは、ソースコード管理可能な開発プラットフォーム OSSや商用開発に利用可能
コンテナレジストリの一般提供
2021年6月、GitHub Packagesにて、dockerのようなコンテナレジストリの機能が一般提供されるようになりました。
以下のように、dockerコマンドでGitHubのコンテナレジストリのドメインghcr.ioを指定することで、コンテナイメージのプッシュやプルが可能になります。
# コンテナイメージのバージョン2.5をプッシュする例 $ docker push ghcr.io/OWNER/IMAGE-NAME:2.5 # コンテナイメージのバージョン指定して、公開されているコンテナをプルする例 $ docker pull ghcr.io/OWNER/IMAGE_NAME:1.14.1 > 5e35bd43cf78: Pull complete > 0c48c2209aab: Pull complete > fd45dd1aad5a: Pull complete > db6eb50c2d36: Pull complete > Digest: sha256:ae3b135f133155b3824d8b1f62959ff8a72e9cf9e884d88db7895d8544010d8e > Status: Downloaded newer image for ghcr.io/orgname/image-name/release:1.14.1 > ghcr.io/orgname/image-name/release:1.14.1
GitHubのローカライズ支援ツール
GitHubに公開されているリポジトリには、多言語にローカライズ対応、ドキュメント整備されたオープンソースソフトウェアが多数あります。しかし、ソフトウェア本体の修正をおこなった場合、同時にローカライズされた箇所も再翻訳などをおこなう必要があるんですね。
そんなローカライズ対応の支援用ツールがあります。
米Alconost者のGitLocalizeというサービスは、GitHub上のドキュメントやファイルの翻訳をサポートする翻訳支援ツールなんですね。現段階では、GitLocalizeは無料で使用可能。開発チームが翻訳にかける工数を大幅に削減するのが目的のツールです。
GitLocalizeは、Githubのマーケットプレイスから利用可能です。現在、$0のFreeプランのみが用意されています。
参考)GitLocalize · GitHub Marketplace
GitHubの登録と使い方
GitHubには、メールアドレスさえあれば登録が可能です。リポジトリの複製やプッシュ・プルをおこなうgitコマンドとGitHubウェブサイト上のリポジトリ管理機能を組み合わせて使います。GitHub公式のghコマンドをインストールすれば、ローカルからissueやpull requestなどのリポジトリ管理機能が利用可能です。
【関連記事】
▶GitHubの使い方 登録方法と、gitコマンド、ghコマンドの使用例
GitHub上にソースコードが流出した問題
2020年2月2日に、NECと中堅ITベンダーのコアが開発に関わったシステムのソースコードの一部が、GitHub上に流出していたことがわかりました。他にも、三井住友銀行(SMBC)や、NTTデータジェトロニクス、サイオス子会社のProfit Cubeに流出の被害が出ています。
参考)GitHub上のソースコード流出問題の被害は5社に、NECとコアも確認 | 日経クロステック(xTECH)
これらの流出被害に対して、コンピュータソフトウェア協会(CSAJ)は2021年2月2日に声明を出しました。
GitHubが危険というのではなく、クラウドサービスを利用する上で正しい理解と対応を求めるという内容です。利用者の萎縮につながらないよう、節度ある情報セキュリティ設計を要請するというんですね。
参考)Githubが危険ではなくセキュリティ設計が大事–業界団体が声明 – ZDNet Japan
外出自粛期間中などでも、リモートワークでの開発にGitHubは活用されています。
経営者判断で、「GitHubは流出可能性があるから使わせない」とみなされないよう、セキュリティ設計とともに、「業務システムで開発したコードは、一部でもネットに共有してはいけない」などの教育も必要になってくるかもしれませんね。
GitHubの日本語の扱い
GitHubのウェブインタフェースは日本語化されていませんが、ソースコード内での日本語やissue、pull requestのコメントなどには問題なく日本語が使えます。日本語のファイル名を使用する場合は、一部のgitコマンドで文字化け(自動エンコード)が起こりますがオプション変更で対応可能です。
【関連記事】
▶GitHubは日本語でのヘルプ完備 リポジトリ内での日本語使用や日本語でのサポートもあり
東京都のコロナ対策サイトが、GitHubでコード公開・修正提案受付
日本語サイトをGitHubを使って改善している有名な例です。
東京都の新型コロナウイルス感染症対策サイトが、GitHub上で公開・修正受付をしています。
参考)都内の最新感染動向 | 東京都 新型コロナウイルス感染症対策サイト
参考)GitHubのリポジトリ tokyo-metropolitan-gov/covid19: 東京都 新型コロナウイルス感染症対策サイト / Tokyo COVID-19 Task Force website
上記サイトでは、都内の陽性患者数や属性、最新の感染動向がグラフや表でわかりやすく視覚化されて掲載されています。サイト内では、各種データがオープンデータ押して公開されていて、データの再利用も可能です。
サイト内の「オープンデータを入手」をクリックすると、CSV形式でデータのダウンロードが可能です。以下は、データセットのページです。ウェブ上で項目指定によるデータエクスプローラーでの表示やフィルタリングもできるようになっています。
参考)東京都 新型コロナウイルス陽性患者発表詳細 – データセット – 東京都オープンデータカタログサイト
課題管理(issue)も、日本語でおこなわれています。
参考)Issues · tokyo-metropolitan-gov/covid19
このリポジトリには、台湾のデジタル担当大臣・唐鳳(オードリー・タン)氏がプルリクエスト(修正提案)を送ってシステムに反映されたことも話題になりました。以下は、オードリー・タン氏が送ったプルリクエストの詳細のページです。言語のラベルを繁「体」字から繁「體」字に修正するという内容でした。
まとめ
- GitHubとは、ソースコードのホスティングができるサービスで、無料で利用可能。
- GitHubには、メールアドレスさえあれば登録が可能で、gitコマンド、ghコマンドを組み合わせて利用する。
- GitHubでは、日本語を含むソースコードや日本語での管理も問題なく行うことができる。