と の 2 つのブランチがbranch_1
ありbranch_2
ます。
それらの違いをどのように確認できますか?
git diffを使用したい。
git diff [<options>] <commit>..<commit> [--] [<path>…]
<commit>
ブランチ名、コミットのハッシュ、または省略形のシンボリック参照はどこにありますか
たとえば、git diff abc123..def567
またはgit diff HEAD..origin/master
これにより、2 つのブランチの先端の差分が生成されます。共通の祖先からの差分を見つけてテストしたい場合は、 2 つの代わりに3 つのドットを使用できます。
git diff <commit>...<commit>
また、コンテンツの違いではなく、どのファイルが異なるかを確認したいだけの場合は、次を使用します--name-only
。
git diff --name-only <commit>..<commit>
<commit>..<commit>
(2 つのドット) 構文では、ドットはオプションであることに注意してください。以下は同義です。
git diff commit1 commit2
ブランチを比較するにはさまざまな方法があり、必要な特定のユース ケースによって異なります。
何かが壊れたために比較したいことがよくあります。何が変更されたかを確認し、それを修正して、コミットする前に何が変更されたかを再度確認します。
個人的に、私がやりたいことの差分を見たいとき:
git checkout branch_1 # checkout the oldest branch
git checkout -b compare-branch # create a new branch
git merge --no-commit --squash branch_2 # put files from the new branch in the working folder
git status # see file names that changes
git diff # see the content that changed.
このソリューションを使用すると、差分が表示されます。 を使用してファイル名のみを表示することもできます。また、差分を表示しながらgit status
実行できる最も重要な部分branch_2
(branch_2 は作業ツリーにあります) も表示されます。何かが壊れている場合は、ファイルを編集して修正できます。いつでも、もう一度入力しgit status
たりgit diff
、新しい編集から への差分を表示したりできますbranch_a
。