2011-06-03 17 views
5

"myDevelopmentBranch" ve "myOtherBranch" adlı bir başka özellik için "myDevelopmentBranch" öğesinden bazılarıyla çakışacak bazı değişiklikler içeren bir geliştirme şubesi olduğunu varsayalım. "MyDevelopmentBranch" den "myOtherBranch" a olan birleştirme sonucunun (potansiyel olarak), daha az sıklıkta (örneğin, günde bir veya birkaç kez haftada bir veya birkaç kez) işlediğimden daha sık işlem yapsam farklı olur mu? Merak ediyorum ki, Mercurial (ya da herhangi bir VCS) 'nin küçük parçalardaki değişiklikleri takip etmesini kolaylaştıracak ve böylece onları nasıl birleştireceğinizi anlatan daha iyi bir iş yapıyorum.Mercurial, değiştirmeler küçük olduğunda dosyaları birleştirmek için daha iyi bir iş yapar mı?

Not! Birisinin neden sık sık işlemesi gerektiğine dair pek çok nedenden ötürü farkındayım, bu sadece üzerinde durduğum teknik bir sorudur.

cevap

5

Birleştirme, her iki dalın ucunda bulunduğu için değiştirilen dosyalar arasındaki farkları giderir (ipuçlarını birleştirdiğiniz varsayılarak). Yani 500 satırları değiştirir şube A, ebeveyn değişiklik kümesi Z 500 satırları değiştirir şube B, ebeveyn değişiklik kümesi Z

üzerinde

  • 1 değişiklik kümesi B1 üzerinde ...

    • 1 değişiklik kümesi A1 olsaydı ... her bir daldaki 50 değişkenin her bir daldaki aynı son halini üretmesi için her biri 10 satır değiştirecek şekilde aynı birleştirme deneyimini elde edersiniz.

      Ancak, benim deneyimime göre, 'un birleştirme işlemini daha kolay hale getirmesi sık sık iş yapmayıp sık sık birleşiyor. Örneğin, geliştirme dalındaki çalışmalara kadar beklemek yerine, geliştirme dalının en son kararlı sürümüne dayanarak geliştirme dalını küçük bitlerde tutmak için bir geliştirme dalında meydana gelen değişiklikleri birleştirmek, büyük bir şubede istikrarlı dal değişiklikleriyle güncellemek için yapılır. ısırmak. Ve bazı durumlarda, kararlı dalların yeniden birleştirilmesi yerine birleştirilmesi (DVCS iş akışınıza bağlı olarak).

  • İlgili konular