コミット間の差分を表示する 質問する

コミット間の差分を表示する 質問する

私はGitを使用していますウブントゥ 10.04(ルシッドリンクス)。

マスターにいくつかコミットしました。

ただし、これらのコミットの差異を取得したいのですが、それらはすべてマスター ブランチにあります。

例えば:

commit dj374
made changes

commit y4746
made changes

commit k73ud
made changes

k73ud と dj374 の違いを調べたいのですが、次の操作を行ったところ、 で行った変更が反映されませんでしたk73ud

git diff k73ud..dj374 > master.patch

ベストアンサー1

試す

git diff k73ud^..dj374

k73ud結果の diff にすべての変更が確実に含まれるようにします。

git diff2つのエンドポイントを比較します(コミット範囲の代わりに)。OPは によって導入された変更を確認したいのでk73ud最初の親コミットk73ud:k73ud^(またはk73ud^1またはk73ud~)。

こうすることで、結果には以降に導入された変更(まで)ではなく、親以降のdiff変更 (つまり、それ自体からの変更を含む) が含まれるようになります。 k73udk73ud k73uddj374

また、以下も試すことができます:

git diff oldCommit..newCommit
git diff k73ud..dj374 

および(スペース1つ以上):

git diff oldCommit newCommit
git diff k73ud dj374

ファイル名のみを取得する必要がある場合(たとえば、手動で修正プログラムをコピーする場合):

git diff k73ud dj374 --name-only

そして、別のブランチに変更を適用することもできます。

git diff k73ud dj374 > my.patch
git apply my.patch

おすすめ記事