私は最後にレビューしてから変更を見ることができますが、その間に起こったマスターの変更は無視したいと思います。rebaseの前後でGit diffブランチをマスターの変更を無視します
F - G H - I
/ /
A - B - C - D - E
私は(E - I
によって表される)の範囲c3af8fc5..7ccc4b49
(B - G
によって表される)と4dfdabdd..301a443c
を2コミットしています。
は、あなたの同僚のためにコードレビューをやっている、想像し、ローカルに自分のブランチをチェックアウトして、あなたのHEAD
は今G
を指しています。あなたはコードレビューを行い、他のものに移ります。
時間がたつと、新しいコミットがマスター(C
、D
、E
)に表示され、あなたの同僚がレビューからのコメントを解決しました。彼はF
とG
に変更しました。なぜなら彼はF
に導入されたメソッドの名前を変更し、その使用をG
に修正したからです。彼はまた、すべての作品を確認するために、マスターに支店をrebased。
もう一度コードレビューを行いたいが、ブランチ全体のコードレビューをやり直すのは怠惰だから、前回の変更内容だけを見たいと思う。あなたはまだ古いrefsをローカルに取得しています。職業はなんですか?
あなたはgit-diff G I
のようなことをすることができますが、マスターに変更された内容が表示されますが、これはまったく役に立たないものです。
また、現在のマスターで古いリファレンスをリベースしてからそれらをdiffすることもできます。それは助けになるかもしれませんが、枝全体をもう一度見直すだけの矛盾もあります。
diff <(git-diff c3af8fc5...7ccc4b49) <(git-diff 4dfdabdd...301a443c)
を試してみた、それは私がどこかに私の注意を向けることができますが、それは非常に、粗です。
あなたはこの問題を解決するためにより良い、ネイティブな方法を知っていますか?ありがとう。 ?
編集: - そう...もっと良いものがある
interdiff <(git-diff -U100 c3af8fc5...7ccc4b49) <(git-diff -U100 4dfdabdd...301a443c) | colordiff
非常に良く2つの差分を差分のなりますが、それでも、それはGitが提供するかもしれない状況に欠けている私がきただけ
discovered interdiff、
Gitは2つのだけのコミットの間の差分を表示することができます。あなたがdiffの相違が欲しいと思うように聞こえるので、Gitができることではありません。 – poke
私は知っているが、gitは変更のコンテキストを持っている、それは何とか巧みに2つのdiffのdiffを生成することができます。 –
しかし、それはどのように見えるでしょうか?私はそれを視覚的に考えることさえできません。 – poke