私はこのことがいかに簡単かわかりません。 rebase -i
を実行すると、すべてのマージが無視されます。マージはコンフリクトなしでマージに成功しますが、競合が発生した場合は停止して待機します。
rebase -i -p
と呼び出すと、マージが維持されます。マージは、ユーザーが実際のマージを行ったときに必要ですが、そうでない場合は完全に失われます。
恐らく、2つのコマンドのいくつかのシーケンスは、あなたが望むときだけマージを保存して、この場合にジョブを完了させることができます。
私はチャールズに同意しなければなりませんが、現実を反映した歴史を持っていることは、それを「かわいく見せる」よりもはるかに貴重です。実際、あるコミットは他のことを知らずに行われ、ソースコードの場合、これは何かが間違っていた可能性があることを伝えることができます。
私たちのチームは常に--rebase
(例えばgit pull -r
)で引っ張ってと間違って何純粋にマージベースのGitのワークフロー
を使用していますか?フラットなトポロジが必要な場合、最も簡単な方法はリベースするときにマージすることではありません。
また、「マージがクリーン」の場合にのみ、フラット化したいとします。私はちょうどここに推測していますが、私はgitレコードがデフォルトコミットメッセージ内のノート以外の事実の後で競合するとは考えていません。
良いフォーカスのための+1 - "現実の噛み付き"。 Gitはそのような巨大なツールスペースと非常に多くのオプションを提供しています。スマートなものとそうでないものを知るのは難しいでしょう。私は仕事のために仕事を作っていないということを確信しているので、おそらくあなたのアドバイスに固執するでしょう。 – krosenvold