GitHub URL github .com 言語 英語 タイプ 協調的バージョンコントロール 運営者 GitHub, Inc. スローガン Social Coding(社会的なコード記述) 営利性 Yes 登録 必要 ユーザー数 1億人(2023年2月)[ 1] [ 2] 開始 2008年4月 (17年前) (2008-04 ) [ 3] 現在の状態 運営中 テンプレートを表示
GitHub (ギットハブ)は、ソフトウェア開発 のプラットフォーム であり、ソースコード をホスティング する。コードのバージョン管理システム にはGit を使用する。Ruby on Rails およびErlang で記述されており、アメリカ のカリフォルニア州 サンフランシスコ市 に拠点を置くGitHub社によって保守されている。主な開発者はクリス・ワンストラス 、P.J.ハイエット 、トム・プレストン・ワーナー (英語版 ) である[ 4] 。
GitHub商用プランおよびオープンソース プロジェクト向けの無料アカウントを提供している。2019年1月より、プライベートリポジトリを無料で提供するようになった[ 5] 。2009年のユーザー調査によると、GitHubは最もポピュラーなGitホスティングサイトとなった[ 6] 。2023年にはユーザ数1億人を突破した[ 1] [ 2] 。
運営会社のGitHub, Inc.は2018年 よりマイクロソフト 傘下となっている。
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.継続的インテグレーション )。
Pull Requestに対するステータスチェック マージ後にテストが走る形のCIを行った場合、一時的であれそのブランチが壊れた状態になるリスクがある。ステータスチェックを利用することで、ブランチが常に利用可能となり、かつ壊れたブランチに基づいたforkをおこなう可能性を0にできる。
GitHubはAPIとしてstatus API とChecks API を提供しており、status APIによるRed/Greenの提示とChecks APIによるCI結果の詳細な提示をサポートしている。
GitHub ActionsはGitHubが提供するCI /CD サービスである。
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] 。
ウィキメディア・コモンズには、
GitHub に関連するカテゴリがあります。
人物
創業者 取締役会 上級幹部チーム コーポレート バイスプレジデント
ソフトウェア
開発言語 技術 オンラインサービス
ゲーム ハードウェア 教育と認識
ライセンス 会議 批判 訴訟 買収企業
キャラクター 関連人物 部門
括弧内の西暦は最初の安定リリース クライアント・サーバ型
分散型 ホスト型