ここには問題はありません。
master
ブランチには毎回これがすでにあります。これは、機能が開発されてからマージされるまで変化し続けます。
したがって、具体的な例では、最初にfeature_xxx_backend
ブランチを作成し、バックエンドの変更を開発します。これが完了すると、ブランチはレビューの対象となりmaster
、レビューが完了するとマージされます。
したがって、別のブランチを開始するだけfeature_yyy_frontend
です。おそらくブランチから直接変更したいので、ブランチにfeature_xxx_backend
既にこれらの変更があるようにしたいでしょう。その後、ブランチがそうであるかのように単にフロントエンド機能を開発しmaster
ます。
feature_xxx_backend
ブランチが変更された場合、たとえば、レビュー中に対処する必要があるものがあるため、これらの変更を行い、feature_yyy_frontend
ブランチにマージします。次に、フロントエンドブランチに進みます。
バックエンドブランチのレビューが完了すると、にマージされmaster
ます。この時点で、ブランチをにリベースすることをお勧めしfeature_yyy_frontend
ますmaster
。これにより、レビュー担当者は、このブランチが貢献する新しい変更のみをレビューするmaster
必要があり、バックエンドに加えられた変更(既に承認済み)を再レビューする必要はありません)。
これは、2つ、3つ、またはそれ以上の依存ブランチがある場合にも実行できます。依存する機能ブランチが2つある場合、両方の機能がマージされた派生ブランチを作成します。そこから分岐し、3番目の機能を開発し、それぞれの変更時に途中で両方の機能ブランチをマージします。両方の機能が完了し、派生ブランチにマージされたら、そのブランチにリベースします。または、マスターにマージされた場合は、マスターにリベースします。
リベース(上記で提案)は非常に強力で、変更のログをきれいに保つのに役立ち、レビューをはるかに簡単にします。