git diff dosyası değiştirildi
Dosya a.txt var.
cat a.txt
> hello
A.txt içeriği "" Merhaba
Bir tamamlama yapıyorum.
git add a.txt
git commit -m "first commit"
Ben o zaman bir test dir içine a.txt hareket ettirin.
mkdir test
mv a.txt test
O zaman benim ikinci bir anlaşma yapmalısınız
git add -A
git commit -m "second commit"
Son olarak, ben a.txt hoşçakal yerine say için düzenleyin
cat a.txt
> goodbye
Benim son tamamlama yapıyorum
git add a.txt
git commit -m "final commit"
Åžimdi burada benim sorum:
Nasıl benim son arasında a.txt içeriği ve benim ilk işlemek işlemek diff?
Denedim:
git diff HEAD^^..HEAD -M a.txt
, ama işe yaramadı. git log --follow a.txt
düzgün bir şekilde yeniden algılar, ama git diff için bir eşdeğer bulamıyorum. Kimse yok mu?
CEVAP
Bu konu ile arasındaki fark HEAD^^
HEAD
olan bir a.txt
hem tamamlar, bu yüzden dikkate bu iki kaydeder (ne olduğu fark etmez), Yeniden Adlandır, kopyala ve değiştir.
Kopya tespit etmek, -C
kullanabilirsiniz:
git diff -C HEAD^^ HEAD
Sonuç:
index ce01362..dd7e1c6 100644
--- a/a.txt
b/a.txt
@@ -1 1 @@
-hello
goodbye
diff --git a/a.txt b/test/a.txt
similarity index 100%
copy from a.txt
copy to test/a.txt
Bu arada, eğer kısıtlamak senin diff için bir yol olarak yapmak git diff HEAD^^ HEAD a.txt
değil mi hiç görmeye gidiyoruz yeniden adlandırır veya kopya çünkü sen zaten dışlanan her şeyin dışında bir tek yolu ve yeniden adlandırır veya kopya - tanım gereği - iki yol içerir.
Nasıl bir diff dosyası için Gıt keyfi ...
Nasıl ya svn cp, svn mv kullanıldığınd...
Nasıl git diff dosyası almak ve aynı d...
kullanım Gıt içinde diff dosyası için ...
Git-diff yama-uyumlu çıktı alabilir mi...