SORU
11 Mart 2010, PERŞEMBE


Git, squash birleştirme ve rebase arasındaki fark nedir?

Git yeniyim ve bir kabak ve bir rebase arasındaki farkı anlamaya çalışıyorum. Anladığım kadarıyla bir rebase yaparken bir kabak gerçekleştirin.

CEVAP
11 Mart 2010, PERŞEMBE


Her iki git merge --squash git rebase --interactive "" işlemek. ezilmiş üretebilir
Ama farklı amaçlara hizmet ederler.

üzerinde herhangi bir iz olmadan hedef şube üzerinde ezilmiş bir taahhüt verecek ilişkisi birleştirme.
Bu kaynak Şubesi tamamen, (şema SO question alınan) dan atmak isterseniz: yararlıdır

      X                   stable
     /                   
a---b---c---d---e---f---g tmp

için:

      X-------------------G stable
     /                   
a---b---c---d---e---f---g tmp

ve sonra tmp şube silme.

ya da sizin yeni bir temel üzerinde işleyen bazı tekrarları, seni ezmek için izin (ya da daha yakın zamanda "yukarı", bakın bu SO question) düzeltme, doğrudan gitmek:

      stable
      X-------------------G tmp
     /                     
a---b

Eğer squash seçerseniz tüm tmp (ama merge --squash, aksine bazı tekrar ve diğerlerini ezmek için seçebilirsiniz) tamamlar.

Yani farklar vardır:

  • kaynak şube (tmp) dokunmatik yok ve istediğiniz yere tek bir taahhüt oluşturur.
  • diğer yapmanızı sağlaraynı kaynaktan şube devamile:
    • yeni bir üs
    • temiz bir geçmiş

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • HowtoDrawAndPaint

    HowtoDrawAnd

    24 EKİM 2010
  • maxman.tv

    maxman.tv

    29 EKİM 2013
  • theatre2film

    theatre2film

    12 NİSAN 2006

İLGİLİ SORU / CEVAPLAR