Başlığın belirttiği gibi, git merge --squash
ve git merge --no-commit
arasındaki farklar hakkında gerçekten net değilim.Git birleştirme --squash ve --no-commit arasındaki farklar
git merge
Yardım sayfasını anladığım kadarıyla, her iki komut da beni güncel bir çalışma ağacında bırakacaktı, burada düzenleme yapmak ve daha sonra son bir taahhüt (veya birden fazla işlem) yapmak mümkündür.
Birisi bu 2 seçeneğin farklılıklarını açıklayabilir mi? Birini diğerinden ne zaman kullanırdım?
Bu yüzden, bir birleşme taahhüdü tarihte nasıl görünecek? Taahhüt mesajını düzenleyebileceğimden, bunun birleştirme taahhüdü olduğunu nasıl anlarım? – quaylar
@quaylar Birleştirme taahhüdü, birden fazla ebeveynin olması dışında gerçekten özel bir taahhüt değildir. Ebeveynleri örneğin 'git log -parents' (ve 'git log --merges' yalnızca bu tür işlemleri gösterir) ile taahhüt edebilirsiniz. –
@PhilippWendler Öyle ki: Tarihçe bakılarak her zaman bildiğim bir birleşme taahhüdüne sahip olmak, bu taahhüdün bir birleşmenin sonucuydu (bu birleşmenin katkıda bulunduğu şubelerin de tuttuğu bilgi). --squash kullanarak bu işlemin bir birleştirme sonucu olduğunu bilmenin bir yolu yoktur. Bunu doğru anlıyor muyum? – quaylar