Görsel birleştirme aracı istemiyorum ve ayrıca çakışan dosyayı vi yapmak ve manuel olarak HEAD (benim) ve içe aktarılan değişiklik (onların) arasında seçim yapmak istemiyorum. Çoğu zaman ya tüm değişikliklerini ya da benimkini istiyorum. Genelde bunun nedeni, benim değişikliğimin bunu yukarı çekmesi ve bana bir çekmeyle geri dönmesidir, ancak çeşitli yerlerde biraz değiştirilebilir.
Çatışma belirteçlerinden kurtulacak ve seçimime bağlı olarak hepsini bir şekilde seçecek bir komut satırı aracı var mı? Ya da her birini yapmak için kendime takma ad verebileceğim bir git komutları kümesi.
# accept mine
alias am="some_sequence;of;commands"
alias at="some_other_sequence;of;commands"
Bunu yapmak oldukça sinir bozucu. 'Benimkini kabul et' için denedim:
randy@sabotage ~/linus $ git merge test-branch
Auto-merging Makefile
CONFLICT (content): Merge conflict in Makefile
Automatic merge failed; fix conflicts and then commit the result.
randy@sabotage ~/linus $ git checkout Makefile
error: path 'Makefile' is unmerged
andy@sabotage ~/linus $ git reset --hard HEAD Makefile
fatal: Cannot do hard reset with paths.
Bu değişiklik işaretlerinden nasıl kurtulmam gerekiyor?
Yapabilirim:
git reset HEAD Makefile; rm Makefile; git checkout Makefile
Ama bu oldukça yuvarlak görünüyor, daha iyi bir yol olmalı. Ve bu noktada, git birleşmenin olduğunu düşünüp düşünmediğinden emin değilim, bu yüzden bunun bile işe yaradığını düşünmüyorum.
Diğer yöne gitmek, 'onlarınkini kabul etmek' yapmak da aynı derecede dağınık. Bunu anlamanın tek yolu:
git show test-branch:Makefile > Makefile; git add Makefile;
Bu da bana Çatışmalar: Makefile içinde iki kez berbat bir taahhüt mesajı verir.
Birisi yukarıdaki iki eylemin nasıl daha basit bir şekilde yapılacağını gösterebilir mi? Teşekkürler