これがどれほど簡単かはわかりません。を実行するrebase -i
と、すべてのマージを無視しようとします。競合のないマージは成功しますが、競合があった場合は停止して待機します。
一方、として呼び出すとrebase -i -p
、ユーザーが実際のマージを行ったときに必要なマージが保持されますが、それ以外の場合はポイントが完全に失われます。
おそらく、必要な場合にのみマージを保持する 2 つのコマンドのいくつかのシーケンスが、この場合の仕事を成し遂げる可能性があります。
しかし、歴史を現実に反映させることは、それを「きれいに見せる」ことよりもはるかに価値があるというチャールズに同意しなければなりません. 実際、一方のコミットは他方のコミットを知らずに行われました。ソース コードの場合、これにより、何か問題が発生した理由がわかります。
私たちのチームは、純粋にマージベースの git ワークフローを使用しています
--rebase
常に(eg )でプルすることの何が問題になっていgit pull -r
ますか? フラットなトポロジが必要な場合、最も簡単な方法は、リベースできるときにマージしないことです。
また、「マージがクリーン」な場合にのみフラット化したいと言います。私はここで推測しているだけですが、デフォルトのコミットメッセージのメモ以外に、事実の後に git が競合を記録するとは思いません。