「GitHub」の版間の差分
削除された内容 追加された内容
プラン変更についての修正 |
m編集の要約なし |
||
(38人の利用者による、間の48版が非表示) | |||
1行目:
{{Pathnav|[[マイクロソフト]]|frame=1}}
{{混同|Git|GitLab}}
{{Infobox Website
| name = GitHub
| logo = [[File:Font Awesome 5 brands github.svg|64px]] [[File:GitHub logo 2013.svg|180px]]
| screenshot =
| url = {{official URL
| commercial = Yes
| type = 協調的バージョンコントロール
| language = [[英語]]<!--、[[日本語]]-->
| num_users =
| registration = 必要
| owner = GitHub, Inc.
26行目:
| slogan = Social Coding(社会的なコード記述)
}}
'''GitHub'''(ギットハブ)は、[[ソフトウェア開発]]の[[プラットフォーム]]であり、[[ソースコード]]を[[ホスティング]]する。コードの[[バージョン管理システム]]には[[Git]]を使用する。[[Ruby on Rails]]および[[Erlang]]で記述されており、[[アメリカ合衆国|アメリカ]]の[[カリフォルニア州]][[サンフランシスコ|サンフランシスコ市]]に拠点を置くGitHub社によって保守されている<!--(以前はLogical Awesome(社?)として知られていた)-->。主な開発者は[[:en:Chris Wanstrath|クリス・ワンストラス]]、[[:en:PJ Hyett|P.J.ハイエット]]、{{ill|トム・プレストン・ワーナー|en|Tom Preston-Werner}}である<ref>
{{cite web
| url = http://www.rubyinside.com/github-officially-launches-git-hosting-a-go-go-853.html
38行目:
</ref>。
GitHub商用プランおよび[[オープンソース]]プロジェクト向けの無料アカウントを提供している。2019年1月より、プライベートリポジトリを無料で提供するようになった
運営会社のGitHub, Inc.は[[2018年
== 概要 ==
GitHubにソースコードをホスティングすることで複数人のソフトウ
このサイトは[[社会的ネットワーク|SNS]]機能をもち、feeds、followersとして提供されている。ネットワークグラフとして開発者は自身のソースコードのバージョンの[[リポジトリ]]を視覚的に把握できるようにしている。
51行目:
2010年1月、GitHubは「GitHub社」という組織で運営されることになった<ref>
{{cite web
| url =
| title = New Year, New Company
| work = GitHub blog
61行目:
</ref>。
2018年6月4日に[[マイクロソフト]]がGitHub社を75億[[USドル]](約8200億円)で買収すると発表<ref name=":0">{{Cite news|url=
ソフトウ
== 機能 ==
=== ブランチ保護 ===
GitHubは直接コミット禁止によるブランチの保護([https://docs.github.com/ja/free-pro-team@latest/github/administering-a-repository/about-protected-branches 保護されたブランチ]/''[https://docs.github.com/en/free-pro-team@latest/github/administering-a-repository/about-protected-branches protected branches]'')を提供している。
GitHubにホストされたリモートリポジトリはgit pushにより更新できるが、これを許容すると意図しないバグによりpushを受けたブランチが壊れるリスクがある。GitHubは「指定ブランチへの直接コミット禁止 + チェック通過Pull Requestを介したmerge/rebase許可」という機能を提供することで、ブランチに問題のあるコミットが混入しないことを可能にしている<ref>"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." [https://docs.github.com/en/free-pro-team@latest/github/administering-a-repository/about-protected-branches GitHub docs]</ref>。
==== ステータスチェック ====
GitHubはPull Requestのステータスチェックに基づいたmerge許可/拒否機能([https://docs.github.com/ja/free-pro-team@latest/github/administering-a-repository/about-required-status-checks 必須ステータスチェック]/''[https://docs.github.com/en/free-pro-team@latest/github/administering-a-repository/about-required-status-checks required status checks]'')を提供している。保護されたブランチにステータスチェックを適用した場合、ステータスがGreenの場合のみPull Request取り込みが許可される。テスト結果をステータス(Red/Green)とすることでテストを通過したPull Requestのみがブランチへマージされるように設定できる(c.f. [[継続的インテグレーション]])。
[[ファイル:RequiredStatusCheck.png|サムネイル|Status Check toward Pull Request]]
マージ後にテストが走る形のCIを行った場合、一時的であれそのブランチが壊れた状態になるリスクがある。ステータスチェックを利用することで、ブランチが常に利用可能となり、かつ壊れたブランチに基づいたforkをおこなう可能性を0にできる。
GitHubはAPIとして[https://docs.github.com/en/free-pro-team@latest/rest/reference/repos#statuses status API]と[https://docs.github.com/en/free-pro-team@latest/rest/reference/checks Checks API]を提供しており、status APIによるRed/Greenの提示とChecks APIによるCI結果の詳細な提示をサポートしている。
=== GitHub Actions ===
GitHub ActionsはGitHubが提供する[[継続的インテグレーション|CI]]/[[継続的デプロイ|CD]]サービスである。
==== <code>pull_request</code>イベント ====
GitHub ActionsはPull Requestに応じたCIトリガー(<code>[https://docs.github.com/ja/free-pro-team@latest/actions/reference/events-that-trigger-workflows#pull_request pull_request]</code>)を提供している。このトリガーは<code>GITHUB_REF</code>引数として<code>refs/pull/:prNumber/merge/</code>
すなわちpull requestを自動マージしたブランチへの参照を提供する。Pull Requestに応じて<code>[https://github.com/actions/checkout actions/checkout@v2]</code>などでこのrefをチェックアウトすれば、Pull Requestをマージした状態に対してCIテストを走らせることが可能になる<ref>"Checkout pull request HEAD commit instead of merge commit" [https://github.com/actions/checkout#checkout-pull-request-head-commit-instead-of-merge-commit Checkout V2 - actions]</ref>。
== 脚注 ==
69 ⟶ 91行目:
== 参考文献 ==
{{Refbegin}}
*{{cite web
| url =
| title = Canonical's Launchpad gets a visual refresh
| work =
| first = Ryan
| last = Paul
81 ⟶ 102行目:
}}
*{{cite news
| url =
| title = GitHub unites Version Control with the Pastie
| work = [[ワシントン・ポスト]]
93 ⟶ 114行目:
== 関連項目 ==
{{Portal|FLOSS}}
* [[Git]]
* [[GitHub Pages]]
* [[OSSホスティングサービスの比較]]
* {{仮リンク|Arctic World Archive|en|Arctic World Archive}}
== 外部リンク ==
{{Commonscat|GitHub}}
{{Wikidata property}}
* {{official website}} {{En icon}}
* [https://github.co.jp/ ギットハブ・ジャパン] {{Ja icon}}
* {{Twitter}}▼
* [https://github.
▲* {{Twitter}} {{en icon}}
* {{Twitter|GitHubJapan|GitHub Japan}} {{ja icon}}
* [https://www.yomiuri.co.jp/life/digilife/column/20231127-OYT1T50164/ GitHubとは?…「オープンソース」文化に支えられた開発環境 (読売新聞、2023年12月2日) ]
{{マイクロソフト}}
{{Bug tracking systems}}
{{FOSS}}
[[Category:技術のウェブサイト]]
[[Category:オープンソース文化・運動]]
[[Category:フリーソフトウェアのプロジェクト]]
[[Category:OSSホスティングサービス]]
[[Category:2008年開設のウェブサイト]]
[[Category:マイクロソフトによる買収]]
[[Category:2018年の合併と買収]]
[[Category:Git]]
|