2011-05-10 22 views
6

Git ve Mercurial ile birkaç günlük deneyimim var ve çok fazla programlama deneyimim yok.Git ve Mercurial olarak yeniden adlandırma: Doğruluk ve otomatiklik

Geçtiğimiz günlerde, ikisini karşılaştıran birçok yazı okuyorum.

seyahatseverlerin Git adlı adlandırma otomatik% 100'dür ancak% 100 doğru: okudum ve benim testler kadarıyla dayanarak, aşağıdaki sonuçlara olsun. İsimleri tahmin etmek için algoritmaya dayanır. Son kullanıcılar tamamen yanlış olsa bile kararını değiştiremez.

Ben seyahatseverlerin Git yöntemi vakaların% 99 ise yarayabilir sanırım, ama bu% 1 baş ağrılarına neden olacak. Refactor'ın çok fazla olması durumunda dosya geçmişini kaybetme riskiyle karşı karşıya kalarak kodumu yeniden düzenlememden (aynı zamanda sınıf adını ve içeriğini değiştirerek) tereddüt ediyor.

Mercurial VisualHG hassas ve otomatik olarak hareket eden ve yeniden adlandırma izlemeniz gerektiğini, sürece hep adlandırmak olarak/Visual Studio içinde benim maddeleri taşımak ve VisualHG yüklemiş,% 100 otomatik ve% 100 doğru olabilir (şu anda VisualHG bir hata var - File is not renamed when I move it between projects). Ve son kullanıcılar hata yaparsa kararını değiştirebilir.

Visual Studio'm yoksa TortoiseHg'nin "Kopyaları/Adlarını Algıla" penceresini hala kullanabilirim, benzerlik yüzdesini ayarlayabilirim, Mercurial'dan yeniden adlandırılan isimleri otomatik olarak algılamasını istiyorum. Hata yaparsa, düzeltme şansım var.

Sonuçların doğru mu yanlış mı?

Referans: Eğer bu olabilir düşünürler olarak

Git and Mercurial - Compare and Contrast

cevap

6

Here Eğer fark açıkladı görebilirsiniz, ama çoğunlukla haklısınız. Git en mv sadece rm ve add yapar iken Mercurial "gerçek" adlandırma yapmak rename ve mv komutları vardır. Ayrıca Mercurial Git davranışını taklit edebilir ve isimlerinizi tahmin edebilir, oldukça hoş bir özellik. Deneyiminden Git'in yeniden adlandırması algılama algoritması, özellikle bir dosyayı kopyalayıp iki kopyayı biraz değiştirirseniz - çoğu zaman yanlış olacaksa - çok yanlış kararlar verir.

4

Ben dosyayı izlemek için cıva yeteneği adlandırır sanmıyorum neredeyse çok mükemmel. Git ile çok fazla deneyimim yok, fakat Mercurial ile biraz iyi bir şeylerim var ve dosyaları yeniden adlandırmak bazı bağlamlarda (hg view onları anlıyor), çok da "ilginç" bir şey yapmadığınız sürece Bu biraz sık gibi görünüyor).

Ve Git, itibar tarafından en azından, gerekirse tarihe düşük seviyeli değişiklikleri yapalım gerekiyordu.

İlgili konular