Ana branşta foo
numaralı bir repo var. Çubuğa geçtim ve foo
'da bazı değişiklikler yaptım. Şimdi bu kopya (henüz taahhüt edilmeyen) ile ana dalın kopyası arasında git diff
'u nasıl çalıştırabilirim? Benim içinBaşka bir şubenin taahhütlü kopyası olan bir dosyanın farklı çalışma kopyası
cevap
aşağıdaki çalışır: Geçmişte
git diff master:foo foo
, bu olabilir: Ayrıca
git diff foo master:foo
: git diff foo master:foo
yana git diff master..feature foo
çalışmıyor Benim için dizinlerde.
git difftool -v tag/branch filename
İstediğiniz böylece, belirli bir dal adıyla çalışma ağaç karşılaştırmak için çalışıyoruz bu: (git-diff man sayfasına bakınız git-diff bu formdan olan
git diff master -- foo
)
git diff [--options] <commit> [--] [<path>...]
This form is to view the changes you have in your working tree
relative to the named <commit>. You can use HEAD to compare it with
the latest commit, or a branch name to compare with the tip of a
different branch.
Bilginize, daha doğrusu sizin çalışma ağacında her şeyden, ayrıca sahnelenen ettik ne diff görüntüleme için --cached
(aka --staged
) seçeneği vardır:
git diff [--options] --cached [<commit>] [--] [<path>...]
This form is to view the changes you staged for the next commit
relative to the named <commit>.
...
--staged is a synonym of --cached.
Teşekkürler. Neden olduğu hakkında bir fikriniz yok, ama sadece bu cevap Linux'ta git 1.8.1 ile çalıştı. – srking
Mükemmel, teşekkürler. Şu andaki şubemin adını diff komutuna dahil etmek istediğim için asıldı, ama bunun gerekli olmadığını görüyorum. – yoyo
Bu, birkaç ay önce benim için çalıştı, ama şimdi görünmüyor. Şu anda git sürüm 2.7.4 (Apple Git-66); Daha önce ne yaptığımı bilmiyorum. – hBrent
git diff mybranch master -- file
da
Bu sadece, dosyanın geçerli çalışma kopyası değil, benimkine bağlı dosyalar için çalışır. – yoyo
- 1. Çalışma kopyası, kopya kopyalama ve bir dosyanın kopyalanmış kopyasını git
- 2. bir kopyası Aralığı Expand
- 3. Atlandı '***' - Engelleyici bir çalışma kopyası bulundu
- 4. svn: uyarı: '.' çalışma kopyası değil
- 5. Svn log - svn: '.' çalışma kopyası değil
- 6. SharpSVN Çalışma Kopyası Kilitli (temizleme temizlemiyor)
- 7. nuget kaldırma paketleri vs SVN çalışma kopyası
- 8. Varlık kopyası zaten farklı bir varlığa atandı (İlkbahar/Hazırda Bekletme)
- 9. Ruby dosya kopyalama kopyası
- 10. Doktrin kaydının derin kopyası
- 11. Ses CMSampleBuffer Kopyası
- 12. Bir MoinMoin sitesinin statik kopyası oluşturma
- 13. Referans olmadan bir nesnenin kopyası nasıl oluşturulur?
- 14. Qt Creator'da Bağımlı Dosyaların Otomatik Kopyası
- 15. Entity Framework 6 Dinamik derinliğe sahip bir varlığın derin kopyası/kopyası
- 16. PHP dizi başvuru dizisinin kopya kopyası
- 17. Ödevdeki listenin Python derin kopyası
- 18. Ubuntu> Pano kopyası, SSHK
- 19. PIL görüntü nesnesindeki Python kopyası
- 20. Git çalışma kopyası kirliyse, Xcode Archive derlemesini nasıl durdurabilirim?
- 21. Subversive: Birleştirirken 'çalışma kopyası' ve 'özyinelemeli' derinliği arasındaki fark nedir?
- 22. Karmaşık Üçüncü Şahıs Nesneleri/Sınıfları'nın Derin Kopyası
- 23. Yerel JS'yi kullanarak bir komut dosyasının tam kopyası nasıl oluşturulur?
- 24. Bir sayfada jQuery otomatik tamamlamasının birden fazla kopyası
- 25. JavaScript'te bir File nesnesinin değiştirilmiş bir kopyası nasıl oluşturulur?
- 26. Klonlandığında bir sınıf nesnesinin kendi kopyası var olduğundan emin olun
- 27. Bir PHP sayfasındaki bir hg deposunun mevcut çalışma kopyası sürümü nasıl görüntülenir
- 28. Sınıf nesnesinin bir kopyası referans olmadan nasıl oluşturulur?
- 29. stl ayırıcısı, diğer tip kopyası yapıcısı,
- 30. Python jeneratör nesnesinin kopyası nasıl yapılır?
ben 'git diff' ilişkin senin cevabını gördüğü an çalışmalı, hep http://stackoverflow.com/questions/5256249/git-diff- düşünmek doesnt-show-yeterli/5257065 # 5257065 – VonC
@VonC: teşekkürler, bunu çizmeye değdiğini bilmek güzel :) Bu arada, cevabımı güncellediğim tuhaflığı anlıyor musunuz? –
Parametreleri yol argümanlarından ayırmak için '' ile denediniz mi? 'git diff - master: foo foo' – VonC