質問
GitHubのPR1はmasterからブランチ1を切った差分として表示されます。
PR1がマージされたとして、例外的にブランチ1に戻り、修正事項を追加して、PR2を作成してPRを作成したとして、PR1とPR2では内容はちがう認識でいますが、PR1のFileChanges
はPR1を作った時のブランチ1の差分として表示されるのか、
それともPR2を作った時のブランチとして、PR1のFileChangesとして反映されるのかどちらでしょうか?
GPT4o回答
GitHubのプルリクエスト(PR)は、それぞれ特定のブランチの特定の状態を対象としています。以下のように考えることができます:
-
PR1の状況:
- ブランチ
branch1
をmaster
から作成し、いくつかの変更を加えてPR1を作成しました。 - PR1のFile Changesは、PR1が作成された時点での
branch1
の差分を表示します。
- ブランチ
-
PR1のマージ後に
branch1
に修正を追加:- PR1がマージされた後に、
branch1
に戻って新たな修正を行います。 - この時点で
branch1
の状態は、PR1のマージ後の状態から変更された新しいものになります。
- PR1がマージされた後に、
-
PR2の作成:
-
branch1
に新たな変更を加えた後、その変更を基にPR2を作成します。 - PR2のFile Changesには、PR2が作成された時点での
branch1
の変更内容が表示されます。
-
重要なポイント: PR1のFile Changesは、PR1が作成された時点の差分で固定されています。したがって、PR1がマージされた後に branch1
に変更を加えても、PR1のFile Changesには反映されません。PR2は新たに作成されたPRとして、PR1とは異なる内容の差分が表示されます。つまり、PR1とPR2のFile ChangesはそれぞれのPRが作成された時点の branch1
の差分を反映しています。
結論として、PR1のFile ChangesはPR1作成時の branch1
の差分として表示され、PR2作成後の変更はPR2のFile Changesにのみ表示されます。
追加質問
ということはブランチを再利用してPRを作成する分には、PR1は記録されるので問題なさそうですね。
GPT4o回答
はい、その通りです。ブランチを再利用して新たなPRを作成する際には、各PRが作成された時点でのブランチの差分がそれぞれ記録されるため、PR1とPR2の内容は独立して扱われます。
ブランチを再利用する場合も、各PRは別々の変更を記録するので、問題なく使い続けることができます。ただし、コードベースの管理やチームでの協力の観点から、明確な変更履歴を保つために新しい機能や修正ごとに新しいブランチを作成することが一般的に推奨されます。それにより、変更の追跡やコードレビューがより容易になります。