大規模なプロジェクトで Gerrit の使用を検討しています。この時点で、承認された変更のマージ競合に人々がどのように対処しているかを知ることは興味深いでしょう。
さまざまなサイズの多くの変更が同時に改訂保留中であり、それらが徐々にレビューおよび検証されていると想像してください。それらの一部は同じコードを変更している可能性があるため、競合は避けられません。「インテグレーター」が単純なワークフローで手動でパッチを受け入れる場合は問題ありません。小さな競合は途中で解決できますが、Gerrit では事情が異なります。変更がレビューされて承認された後、マージの競合が発生した場合、私が理解しているように、作成者によってリベースされ、改訂のために再度プッシュされる必要があります。その場合、改訂プロセスが再び開始されます。比較的活発なプロジェクトでは、1 週間に 50 件を超える外部貢献者のコミットがあり、これは悪夢に変わる可能性があります。
質問:
Gerrit は、多数のマージ競合が予想される大規模でアクティブなものを前進させる方法ではないということは正しいですか?
いくつかのマージの競合は些細なことかもしれません。作成者が変更を再コミットするのを気にせずにそれらを解決する方法はありますか?
変更を安定したブランチにバックポートする必要がある場合は、チェリーピックがクリーンであっても、各ブランチの個別の変更をプッシュして改訂する必要があると思います。
Gerrit ワークフローの経験に関する一般的なコメントも歓迎します。