GitHub
GitHub(ギットハブ)は、ソフトウェア開発のプラットフォームであり、ソースコードをホスティングする。コードのバージョン管理システムにはGitを使用する。Ruby on RailsおよびErlangで記述されており、アメリカのカリフォルニア州サンフランシスコ市に拠点を置くGitHub社によって保守されている。主な開発者はクリス・ワンストラス、P.J.ハイエット、トム・プレストン・ワーナーである[4]。
URL |
github |
---|---|
言語 | 英語 |
タイプ | 協調的バージョンコントロール |
運営者 | GitHub, Inc. |
スローガン | Social Coding(社会的なコード記述) |
営利性 | Yes |
登録 | 必要 |
ユーザー数 | 1億人(2023年2月)[1][2] |
開始 | 2008年4月[3] |
現在の状態 | 運営中 |
GitHub商用プランおよびオープンソースプロジェクト向けの無料アカウントを提供している。2019年1月より、プライベートリポジトリを無料で提供するようになった[5]。2009年のユーザー調査によると、GitHubは最もポピュラーなGitホスティングサイトとなった[6]。2023年にはユーザ数1億人を突破した[1][2]。
概要
編集GitHubにソースコードをホスティングすることで複数人のソフトウェア開発者と協働してコードをレビューしたり、プロジェクトを管理しつつ開発を行うことができる。
このサイトはSNS機能をもち、feeds、followersとして提供されている。ネットワークグラフとして開発者は自身のソースコードのバージョンのリポジトリを視覚的に把握できるようにしている。
GitHubはGist(ギスト)[7]と呼ばれるPastebinスタイルのサイトも運営している。それらのコンテンツは、具体的には個々のリポジトリのためのウィキおよびウェブページでありGitリポジトリを通して編集される。
2010年1月、GitHubは「GitHub社」という組織で運営されることになった[8]。
2018年6月4日にマイクロソフトがGitHub社を75億USドル(約8200億円)で買収すると発表[9]。CEOのサティア・ナデラは買収後もGitHub社を独立企業として維持する意向を示し[9][10]、ワンストラスはマイクロソフトのテクニカルフェローとなることも発表された[10]。10月末に買収手続きは完了し、予定通りXamarin創業者のナット・フリードマンがCEOに就任、マイクロソフト傘下として新たなスタートを切った[11][12]。
ソフトウェア開発者向けのウェブプラットフォームであるが、ファイルのアップローダーやソーシャル・ネットワーキング・サービスとみなし、民間企業や教育機関がアクセスを制限する例もある[13]。
機能
編集ブランチ保護
編集GitHubは直接コミット禁止によるブランチの保護(保護されたブランチ/protected branches)を提供している。
GitHubにホストされたリモートリポジトリはgit pushにより更新できるが、これを許容すると意図しないバグによりpushを受けたブランチが壊れるリスクがある。GitHubは「指定ブランチへの直接コミット禁止 + チェック通過Pull Requestを介したmerge/rebase許可」という機能を提供することで、ブランチに問題のあるコミットが混入しないことを可能にしている[14]。
ステータスチェック
編集GitHubはPull Requestのステータスチェックに基づいたmerge許可/拒否機能(必須ステータスチェック/required status checks)を提供している。保護されたブランチにステータスチェックを適用した場合、ステータスがGreenの場合のみPull Request取り込みが許可される。テスト結果をステータス(Red/Green)とすることでテストを通過したPull Requestのみがブランチへマージされるように設定できる(c.f. 継続的インテグレーション)。
マージ後にテストが走る形のCIを行った場合、一時的であれそのブランチが壊れた状態になるリスクがある。ステータスチェックを利用することで、ブランチが常に利用可能となり、かつ壊れたブランチに基づいたforkをおこなう可能性を0にできる。
GitHubはAPIとしてstatus APIとChecks APIを提供しており、status APIによるRed/Greenの提示とChecks APIによるCI結果の詳細な提示をサポートしている。
GitHub Actions
編集GitHub ActionsはGitHubが提供するCIサービスである。
pull_request
イベント
編集
GitHub ActionsはPull Requestに応じたCIトリガー(pull_request
)を提供している。このトリガーはGITHUB_REF
引数としてrefs/pull/:prNumber/merge/
すなわちpull requestを自動マージしたブランチへの参照を提供する。Pull Requestに応じてactions/checkout@v2
などでこのrefをチェックアウトすれば、Pull Requestをマージした状態に対してCIテストを走らせることが可能になる[15]。
脚注
編集- ^ a b “100 million developers and counting” (英語). GitHub. 2023年2月2日閲覧。
- ^ a b “GitHubユーザー1億人時代--変わりつつある開発者の役割”. ZDNet. 2023年2月2日閲覧。
- ^ Wanstrath, Chris (2008年4月10日). “We Launched”. GitHub. 2012年1月31日閲覧。
- ^ Cooper, Peter (2008年4月10日). “GitHub Officially Launches: Git Hosting A-Go-Go!”. Ruby Inside. 2018年6月4日閲覧。
- ^ nat (2019年1月7日). “New year, new GitHub: Announcing unlimited free private repos and unified Enterprise offering” (英語). The GitHub Blog. 2019年1月8日閲覧。
- ^ “Report | Survs” (英語). www.survs.com. 2018年6月5日閲覧。
- ^ “Build software better, together” (英語). GitHub. 2018年6月5日閲覧。
- ^ Hyett, PJ (2010年1月21日). “New Year, New Company”. GitHub blog. 2012年1月31日閲覧。
- ^ a b “マイクロソフトが「GitHub」を75億ドルで買収、独立性は維持”. 日経クロステック. 日経BP. (2018年6月5日) 2022年7月16日閲覧。
- ^ a b サティア・ナデラ (2018年6月4日). “Microsoft + GitHub = Empowering Developers - The Official Microsoft Blog” (英語). The Official Microsoft Blog. 2018-06-04 2018年6月5日閲覧。
- ^ “Microsoft completes GitHub acquisition” (英語). The Official Microsoft Blog (2018年10月26日). 2019年5月31日閲覧。
- ^ “Pull request successfully merged. Starting build...” (英語). The GitHub Blog (2018年10月26日). 2019年5月31日閲覧。
- ^ GitHubへのアクセスをブロックする企業や学校が増加 - 財経新聞
- ^ "Protected branches ensure that collaborators on your repository cannot make irrevocable changes to branches. Enabling protected branches also allows you to enable other optional checks and requirements, like required status checks and required reviews." GitHub docs
- ^ "Checkout pull request HEAD commit instead of merge commit" Checkout V2 - actions
参考文献
編集- Paul, Ryan (2008年7月17日). “Canonical's Launchpad gets a visual refresh”. Ars Technica. 2012年1月31日閲覧。
- Olson, Rob (2008年7月22日). “GitHub unites Version Control with the Pastie”. ワシントン・ポスト 2012年1月31日閲覧。
関連項目
編集外部リンク
編集- 公式ウェブサイト
- ギットハブ・ジャパン
- GitHubブログ
- GitHub (@GitHub) - X(旧Twitter)
- GitHub Japan (@GitHubJapan) - X(旧Twitter)
- GitHubとは?…「オープンソース」文化に支えられた開発環境 (読売新聞、2023年12月2日)