2012-09-25 19 views
13

Sıklıkla yaptığımda yerel dosyamı düzenlemeden önce düzenlemek istiyorum. Bu, Eclipse'in karşılaştırma görünümünde, yerel dosyayı kolayca düzenleyebilmenizi ve önceki sürümdeki değişiklikleri kopyalamanızı sağladığından çok iyi çalışır.Gitmek için kdiff3 işlevini kullanarak git…

Git ve kdiff3'ü aynı şekilde çalışmak için kurmaya çalışıyorum. Kdiff3'ü mergetool olarak kullandığımda beklendiği gibi çalışır. Ancak, difftool olarak ayarladığımda, bana salt okunur bir görünüm verir, böylece herhangi bir düzenleme yapamam. Belgelere göre (http://kdiff3.sourceforge.net/doc/documentation.html) --output seçeneğinin bana istediğim iki dosyayı birleştirmesini beklerdim, ama değil. Benim .gitconfig ilgili kısmı:

[diff] 
    tool = kdiff3 
[difftool "kdiff3"] 
    cmd = /Applications/kdiff3.app/Contents/MacOS/kdiff3 $LOCAL $REMOTE --output $LOCAL 
    trustExitCode = false 
+1

"$ LOCAL" ve "$ REMOTE" içindeki "$", ya da en azından "$ LOCAL" ve "$ REMOTE" öğesinin başına getirdiniz mi? – VonC

+0

Bunu denedim ve aldım. aynı sonuç, öneri için teşekkürler. –

cevap

7

Ben aşağıdaki komutu kullanırsanız in-ağacının dosyayı düzenlemek için KDiff3 kullanabilirsiniz:

kdiff3 $LOCAL $REMOTE --output $MERGED 

KDiff3 benim $PATH olduğunu, bu kadar önemli bit $LOCAL çıkışını $MERGED olmalıdır. $LOCAL çıktı ayarı geçici dosyaya yazacak olduğundan

...the configured command line will be invoked with the following 
variables available: $LOCAL is set to the name of the temporary file 
containing the contents of the diff pre-image and $REMOTE is set to 
the name of the temporary file containing the contents of the diff 
post-image. $MERGED is the name of the file which is being compared. 

, bunun yerine o gerçek "Yerel olacağından $MERGED yazma istersiniz: git-difftool manpage itibaren

"ağaç içi dosya.

İlgili konular