8

2人の開発者が、2つのまったく異なる変更(たとえば、2つの異なるファイル)で開発ブランチに取り組んでいます。両方が同時に作業を送信し、2つのJenkinsビルドをトリガーします。これらのビルドは正常に機能しますが、1つのレビューに他のレビューよりも時間がかかります。

最初の開発者はパッチセットを送信し、開発には中間コミットがないため、Gerritはそれをすぐにマージします。

2番目の開発者は後でパッチセットを送信します。現在、中間コミットがありますが、マージ自体は簡単で、Gerritがマージを実行します。

これで2つのビルドがあり、どちらにももう一方の作業が含まれていません。

マージが完全に些細なものであっても、中間コミットがある場合は2番目の送信をブロックしたいので、開発者は代わりに送信をリベースして更新します(そして、その過程でJenkinsで新しいビルドをトリガーします)。

レビューが完了し、パッチセットが送信されているが、ターゲットブランチに中間マージがある場合に、このような些細で不要なマージをブロックするために、Gerritで何を設定しますか?

4

1 に答える 1

7

Gerritでプロジェクトオプションを変更できるのは早送りのみです。これは早送りマージではないため、変更が反映されないようにします。次に、developer2にgit pull --rebaseを強制して再度プッシュします。これで、developer1が行った変更が検証の一部になります。

于 2012-12-07T03:31:26.080 に答える