git diff
2 つのコミットの違いを表示できます。
git diff mybranch master -- myfile.cs
または、同等に:
git diff mybranch..master -- myfile.cs
ファイルへの相対パスを指定する必要があることに注意してください。したがって、ファイルが src ディレクトリにある場合は、src/myfile.cs
代わりにmyfile.cs
.
後者の構文を使用すると、いずれかの側がHEAD
省略される場合があります (たとえば、master..
と比較master
しHEAD
ます)。
あなたも興味があるかもしれませんmybranch...master
(git diff
ドキュメンテーションから):
<commit>
このフォームは、両方の共通の祖先から開始して、2 番目までの を含むブランチの変更を表示するためのもの<commit>
です。git diff A...B
と同等git diff $(git-merge-base A B) B
です。
言い換えると、これはmaster
から分岐してからの の変更の差分を示しますmybranch
(ただし、 のそれ以降の新しい変更はありませんmybranch
)。
いずれの場合も、--
ファイル名の前のセパレータは、コマンド ライン フラグの終わりを示します。引数がコミットまたはファイルを参照する場合に Git が混乱しない限り、これはオプションですが、それを含めることは悪い習慣ではありません。いくつかの例については、Git checkout double dashes の意味に対する Dietrich Epp の回答を参照してください。
構成されている場合は、同じ引数を渡すことができgit difftool
ます。