Taahhüt edilmemiş değişikliklerin özünde kötü bir şey olduğuna inanmıyorum. "Onlarla birleştirilememe" ifadesine atıfta bulunuyorsunuz - bazı dosyalarda taahhüt edilmemiş bir değişikliğiniz varsa ve bu dosyadaki bir değişikliği alıp güncellerseniz, Mercurial birleştirme işlemini tıpkı işlemişmişsiniz gibi başlatır, sonra sizden istendiğinde Birleştirme. Farklı bir şey mi demek istediniz?
Dolayısıyla, henüz diğer geliştiricilerle paylaşmak istemediğiniz yerel değişiklikler için iki yaklaşımınız vardır. Birincisi, çalışma kopyanızdaki değişiklikleri tutmak, ancak onları itmemek, diğeri ise çalışma kopyasının dışında bırakmaktır. Hangisini seçtiğiniz, bu değişikliklerin çalışırken kullanılabilir olmasını isteyip istemediğinize bağlıdır.
Bunları çalışma kopyasında tutarsanız, gelen değişiklikler iyi çalışır, bu nedenle yalnızca giden değişiklikler oluşturmaktan kaçınmanız gerekir ve bu, bunları yerine getirmekten kaçınmak anlamına gelir. Dosyalar yeniyse, bu kolay - sadece hg add
onları değil . Zaten izleniyorlarsa, bunları özel olarak taahhütlerden hariç tutabilirsiniz hg commit --exclude foo.txt
. Hariç tutulacak çok sayıda dosyanız varsa veya bunları birçok işlemden hariç tutacaksanız (örneğin, yerel bir yapılandırma dosyasında kalıcı bir değişiklik için), hariç tutma uzantısına bakın .
Değişiklikleri bir kenara taşımaya hazırsanız, başka seçenekleriniz de vardır. En basit şey, hg diff
dosyaları güvenli bir yerde sakladığınız bir yama oluşturmak için dosyaları kullanmak , daha sonra hg patch --no-commit
değişiklikleri geri almak istediğinizde bu yamayı yeniden uygulamaktır. Raf uzantısını , tavan uzantısını veya başka bir akrabayı kurarak bunu daha pürüzsüz hale getirebilirsiniz . Kuyruk uzantısını da kullanabilirsiniz , ancak bu bir somunu kırmak için balyoz kullanıyor. Hatta değişiklikleri taahhüt edebilir, daha sonra ebeveyne geri güncelleyebilir ve orada başka bir iş yapabilirsiniz, değişiklikleri güdük bir anonim dalda bırakarak - hg commit -m 'temporary branch' && hg up $(hg log -r 'parents(.)' --template '{node}')
(elle yapmak daha kolay olabilir!). Ancak, bu değişiklik setini zorlamamaya dikkat etmeniz gerekir.