レビューをGerritに送信し、レビューがしばらく保留されている場合、Gerritでcannot merge
メッセージが表示されます。
他の誰かが同じファイルを変更し、私の前に配達したので、私はそれが来ることを理解しました。私は私の問題を解決するために以下の回避策を試みています。
これは機能しますが、私が持っていたものは何でもレビューでコメントできなくなり、レビュアーが再度チェックすることは困難です。
現在のレビューからcannot merge
を削除する方法を探しています。ありがとう!
「マージできない」問題を解決するために、Gerritの現在の変更を放棄する必要はありません。あなたがする必要があるのは:
ほとんどのマージできない問題を解決できるrebase
ボタンを試してください。自身でリベースする適切なコミットを見つけることができれば、大丈夫です。それができない場合、ターゲットブランチの最後のコミットを見つけ、コミットの空白を埋めます。場合によっては、最初にコミットを送信する必要があります。このコミットでは、マージできないものが依存関係にあります。とにかく機能しない場合は、それを放棄し、最新のコミットに基づいてコミットを行ってください。
Git/gerritを使用して共有コードベースで作業する場合のベストプラクティスは、個々の変更をできるだけ小さくすることです。単一の大きなコミットで変更を送信する代わりに、コミットごとに1つの論理的な変更を持つ一連の小さなコミットに分割します(ブランチをgerritに送信します)。このワークフロー:
このように、あなたが下がる前に誰かが彼の変更をマージする可能性。変更をより簡単にレビューできるように、できるだけ早くリベースする必要があります。上流ブランチに対して定期的にリベースすることは、変更を最新の状態に保ち、大きなマージ競合に対処する必要がないことを意味します(解決するために、より小さく、管理しやすい問題が発生します)。
これがあなたの質問に答えるかどうかはわかりませんが、私はこれらの2つのルールに従い、問題はありません。