2012-01-11 18 views
9

Biz diff (log, show sırasında adlandırma tespit buluşsal bazı yapılandırma seçenekleri vardır) ve merge: dosya sayısı kopyasını yaparken/algılama adlandırmak dikkate değiştirme eşiği (fark ile -M [n] --find-yeniden adlandırır [= N] gibi) söz konusu adlandırma ile birleştirme

diff.renameLimit; git diff seçeneğine eşdeğer -l.

diff.renames Rames git ile yeniden adlandırın. Herhangi bir boole değerine ayarlanırsa, temel yeniden adlandırmayı etkinleştirir. "Kopya" veya "kopya" olarak ayarlanırsa, kopyaları da algılar.

merge.renameLimit Birleştirme sırasında yeniden adlandırma algılamayı gerçekleştirirken dikkate alınacak dosya sayısı; belirtilmezse, varsayılan değer, diff.renameLimit değerine ayarlanır.

-M [<n>] (veya --find-adlandırmalar [:

Ayrıca farklı içeriklerle dosyalar diff için yeniden adlandırma (log, show) göz önüne alındığında kontrol etmek için bir seçenek var = <n>])

Yeniden adlandır adları. N belirtilirse, benzerlik endeksindeki bir eşiktir (ör. Dosyanın boyutuna kıyasla ekleme/silme miktarı). Örneğin, -M90%, dosyanın% 90'ından fazlası değişmemişse, bir silme/ekleme çiftinin yeniden adlandırılmayı düşünmesi gerektiği anlamına gelir.

SORU: Birleştirme için benzerlik dizinindeki eşiği nasıl kontrol edebilirim? Yalnızca ve diğerleri için bir komut satırı seçeneği olarak kullanılabilir, ancak merge değil. Ve diff için bile yapılandırma anahtarı yok. Herhangi bir nedenle merge için geçerli değil mi?

cevap

4

Eğer özyinelemeli birleştirme stratejisi (varsayılan) Eğer yeniden adlandırma eşik seçeneğini kullanabilirsiniz birleşiyor ediyorsanız:

git merge -X rename-threshold=80 branch 
İlgili konular