なぜ必要なのか

公開の天気ウィジェットが地域サイトに雨予報を表示します。ボランティアが表示修正を提案します。貢献者はすでにGitHubを利用し、サーバー運用より、全員に書き込み権限を与えず提案を受け取ることを重視します。

どう解決するのか

貢献者は自分のforkへブランチをpushし、PRを開きます。保守担当者が差分を確認し、修正を求めてからマージします。提案だけではmainに入りません。

貢献者が天気表示の修正を提案し、保守担当者が確認・マージ

公開の天気ウィジェット · 貢献の例

境界を越えるのは変更の提案

保守担当者のリポジトリ

PR · 提案された変更

  1. 02差分をレビュー
  2. 03修正を依頼 → 貢献者が更新
  3. 04権限のある担当者がマージ
main← 受理した雨予報の修正

PRは提案であり、書き込み権限や配布ではありません。Gitの履歴とGitHubのレビューは別の役割です。

どんな考え方なのか

GitHubはGitリポジトリと協業を提供します。Gitは履歴を記録し、GitHubはレビューとアクセス管理を加えます。他のホストにもPRがあります。非営利の共同体ならCodeberg、自主運用ならGiteaが合う場合があります。

出典