Git: tek bir taahhüt olarak başka bir şube tüm değişiklikleri birleştirme
Git, bir şekilde başka bir şube tüm değişiklikleri birleştirmek, ama bir tek işlemeye squash aynı anda var mı?
Ben genellikle ayrı bir şube olarak yeni bir özellik üzerinde çalışmak ve düzenli/bas - ağırlıklı olarak veya başka bir makine üzerinde çalışıyorum ne transferi yedekleme için taahhüt edecektir. Demek tamamlar çoğunlukla bu "yarı MAMUL" falan gereksiz. Özelliği xxx
Bu iş bitmiş ve yarı MAMUL şube geri ana birleştirmek istiyorum bir kez, o Ara tamamlar atmak istiyorum, ve sadece bir tek temiz bir taahhüt var.
Bir kolay yolu bunu yapmak için vardır?
Dallı nerede olduğunu alternatif olarak, ne zamandan beri bir şube üzerinde işleyen tüm kabakları bir komut?
CEVAP
Başka bir seçenek git merge --squash <feature branch>
sonunda git commit
yapın.
--squash
- hayır-squash
Gerçek bir birleştirme olarak çalışan ağaç ve dizin durumu üretmek (hariç birleştirme oldu bilgi), ama değil aslında olun bir ya da BAŞI, ne de kayıt tamamlama hareket $GİT_DİR/MERGE_HEAD sonraki neden git komutu, bir birleştirme oluşturmak için taahhüt commit. Bu bir oluşturmanızı sağlar mevcut üstünde tek tamamlama aynı olan şube başka bir şube (veya daha fazla birleştirme ahtapot durumunda).
git - başka bir şube birleştirme...
GİT: 'birleştirme yerine 'üz...
SVN - başka bir şube birleştirme?...
Git kullanarak, nasıl bir şube bir dos...
Bir birleştirme dönmek için nasıl'...