SORU
7 NİSAN 2009, Salı


git - atlama belirli birleştirirken tamamlar

Yaklaşık bir yıldır Git şimdi kullanıyorum ve harika olduğunu düşünüyorum, ama sadece projenin ikinci sürümü başladım ve bunun için yeni bir şube başladı. Şeyler ileriye dönük olarak işlemek için en iyi yolu ile biraz mücadele ediyorum.

İki dal demek master10 (v1) ve master20 (v2) aradım. Şube v1 hata düzeltmeleri master10 ve master20 yeni şeyler geliştirme yapıyorum. Bir hata düzeltme yaptığım zaman ben master20 kontrol ve git merge master10 yaparak v2 içine birleştirme. Şimdiye kadar çok iyi.

Şimdi ancak, istemiyorum v1 değişikliği v2, ama diğer hata düzeltmeleri birleştirme devam etmek istiyorum yaptım. Nasıl Gıt belirli işlemek (veya işleyen bir dizi) ama ileriye atlamak için söyle ben hala diğer hata düzeltmeleri birleştirmek istiyorum.

git rebase ama doktora ihtiyacım var okudum ve kafam neredeyse patlamış olabileceğini düşündüm.

İstediğim şey bir "git sync bunu tamamlar" iki şubeleri olduğunu belirten git komutu senkron ve geleceği sadece birleştirme eşitleme-noktası gibi bir şey olduğunu düşünüyorum

Herhangi bir yardım için teşekkür ederiz.

CEVAP
8 NİSAN 2009, ÇARŞAMBA


Eğer en birleştirmek istiyorsanız ancak "" "" örneğin, bunu yapabilirsiniz. ana bakım şube üzerinde tamamlar Gerektirir bazı işler---- yukarıda da bahsedildiği gibi, her zamanki gibi kullanma durumu olduğu için birleştirme her bir şube--- ama bazen olur bu sana yapılan bir değişiklik için bir sürümü bu olmamalı entegre geri (belki bu kod oldu protonlardan söz master zaten), nasıl temsil ediyorsunuz? İşte söylüyorum

Yani hadi bakım 5 değişiklik uygulanmış sanırım, ve o (~3 bakım) Diğerleri olmalıdır, ancak ana geri birleşti. Üç aşamada yapacağın şu: aslında, birleştirme gerisi sonra. değil hatta birleştirilmiş olarak daha önce her şeyi birleştirme, gıt bakım~3 mark söyle Magic:

bash <master>$ git merge maint~4
bash <master>$ git merge -s ours maint~3
bash <master>$ git merge maint

İlk komut her şeyi birleştiriröncezahmetli sizin ana bakım üzerine işlemek. Varsayılan günlük mesaj birleştirme sensin açıklayacağız birleştirme "'' (başlarında)". bakım şube

İkinci komut birleştirir sorunlu, bakım~3 tamamlama, ama "bizim" seçeneği söyler gıt için kullandıkları özel bir "birleştirme yöntemi" olan, aslında, işleri sadece tutmak ağacı vardır birleştirme ve görmezden tamamlama(ler) birleştirilmesi tamamen. Ama hala revizyon grafik şimdi bakım~3 birleştirilmiş olduğunu söylüyor yani yeni bir KAFA ve bakım ile tamamlama birleştirme ailesi olarak~3 yapıyor, değil mi. Aslında muhtemelen-m seçeneği kullanmak istiyor 'git' de, bu bakım~3 taahhüt açıklamak için aslında göz ardı ediliyor! birleştirme yani

Son komutu tekrar senkronize hepiniz böylece sadece ana içine bakım (~2..bakım bakım) geri kalanı birleştirir.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Lin Steven

    Lin Steven

    17 EKİM 2006
  • ThreadBanger

    ThreadBanger

    2 Mart 2007
  • Warner Bros. UK

    Warner Bros.

    6 HAZİRAN 2008