共同開発モデルについて
プルリクエストの使い方は、プロジェクトで使う開発モデルのタイプによります。
プルリクエストを使う開発モデルには、主に2つのタイプがあります。 フォークとプルモデルでは、既存のリポジトリを誰でもフォークでき、ソースリポジトリにアクセスすることなく変更をその個人フォークにプッシュできます。 プロジェクトのメンテナーは、その変更をソースリポジトリにプルできます。 フォークのブランチからソース(上流)のリポジトリのブランチへの変更を提案するプルリクエストをオープンする場合、上流のリポジトリへのプッシュアクセスができる人がプルリクエストに変更を加えられるようにすることができます。 このモデルは、新しいコントリビュータにとって摩擦が減り、事前に調整することなく人々が独立して作業できることから、オープンソースプロジェクトでよく使われます。
Tip:オープンソースに関する詳しい情報、特にオープンソースプロジェクトの立ち上げと成長させる方法について、健全なオープンソースコミュニティの育成を支援するOpen Source Guidesを作成しました。 オープンソースコミュニティの管理に関する無料のGitHub Learning Labコースを利用することもできます。
共有リポジトリモデルでは、コラボレータは単一の共有リポジトリへのプッシュアクセスが許可され、変更の必要がある場合にはトピックブランチが作成されます。 このモデルでは、メインの開発ブランチに変更がマージされる前に、一連の変更についてコードレビューと一般的な議論を始めることができるので、プルリクエストが役に立ちます。 このモデルは、プライベートなプロジェクトで協力する小さなTeamやOrganizationで普及しています。