Git Beyond Compare 3'ü bir diff aracı olarak başlatmayı başardım, ancak bir diff yaptığımda, karşılaştırdığım dosya yüklenmiyor. Dosyanın yalnızca en son sürümü yüklenir ve başka hiçbir şey yüklenmez, dolayısıyla Beyond Compare'in sağ bölmesinde hiçbir şey yoktur.
Beyond Compare 3 ile Cygwin ile git 1.6.3.1 çalıştırıyorum. Web sitelerinin destek bölümünde önerdikleri gibi, aşağıdaki gibi bir komut dosyasıyla karşılaştırmanın ötesine geçtim:
#!/bin/sh
# diff is called by git with 7 parameters:
# path old-file old-hex old-mode new-file new-hex new-mode
"path_to_bc3_executable" "$2" "$5" | cat
Başka biri bu sorunla karşılaştı ve buna bir çözüm biliyor mu?
Düzenleme:
VonC'nin önerilerini takip ettim ama hala eskisi gibi aynı sorunu yaşıyorum. Git için biraz yeniyim, bu yüzden belki de diff'i doğru kullanmıyorum.
Örneğin,
git diff main.css gibi bir komutla bir dosyadaki diff'i görmeye çalışıyorum
Ötesinde Karşılaştırma açılacak ve sol bölmede yalnızca geçerli main.css'imi görüntüleyecek, sağ bölmede hiçbir şey yok. Şu anki main.css'mi HEAD ile karşılaştırıldığında sol bölmede görmek istiyorum, temelde en son yaptığım şey.
Benim git-diff-wrapper.sh şuna benzer:
#!/bin/sh
# diff is called by git with 7 parameters:
# path old-file old-hex old-mode new-file new-hex new-mode
"c:/Program Files/Beyond Compare 3/BCompare.exe" "$2" "$5" | cat
Git yapılandırmam Diff için şöyle görünüyor:
[diff]
external = c:/cygwin/bin/git-diff-wrapper.sh
/c/program files
yerine linux tarzı bir yol kullanmak zorunda kaldımc:/program files
. Ayrıca kaldırdım"$(cygpath -w $LOCAL)"
ve sadece kullandım"$LOCAL"
. İşe yarayacak gibiydi.