Sadece bir taahhüt yerine yanlışlıkla "hg commit --amend" yaptım. Tadilattan önce taahhüdünü nasıl geri alabilirim?Mercurial: "hg commit --amend" i geri döndürün.
cevap
NOT: Bu yanıt şimdi kullanımdan kaldırılmıştır. Bunun yerine @Sorina Sandu'dan the answer adresine bakın.
--amend bayrağı o yılında ebeveyn değişiklikleri içeren taahhüt yeni çalışmaya dizinin üst değiştirme kullanılabilir:
yazan yere
hg help commit
gör Varsa "hg durumu" tarafından bildirilenlere ek olarak. Eski işlem, bir yedek pakette ".hg/strip-backup" (bkz. "hg yardım paketi" ve "hg help unbundle" öğesinde nasıl yedekleneceği hakkında) saklanır.
Sen hg reflog
ve hg reset <hash>
(journal extension itibaren) kullanabilirsiniz. O, Geri almak istediğiniz değişiklik ise sadece kullanmak
<old-hash> -> <new-hash> <user> <timestamp> commit --amend <some-path>
:
hg reset <old-hash>
ne döndürülecek taahhüt önceden bulunan ve
hg reflog -v
gibi bir şey vermelidir Değiştirilen değişiklikler şimdi değiştirilmemiş değişiklikler olmalıdır (hg status
ve hg diff
kullanarak kontrol edin).
bu doğru bir cevaptır. mercurial reflog ve –
sıfırlamayı destekliyor, bu sadece mükemmel bir şekilde mengenede çalışıyor –
@JacobKrall Bu benim için Mercurial ile mükemmel çalışıyor. – zzy
- Eğer iki başı olmalıdır Şimdi
hg unbundle <latest backup>
.hg/strip-backup
dizinde son kaydedilen yedek bul - iki kaydedilmesini ile değiştirilmiştir, taahhüt diğeri ile bir (ilkini - Eski değiştiren, ikincisi önce taahhüt caled: "geçici (eski taahhüt hash) için değişiklik düzeltmek."histedit
uzantısına sahipseniz, bunu değiştirmek içinhg histedit
yapabilirsin (örn.edit
seçmeden hemen önce bir durum elde etmek için seçin;kullanarak tüm değişiklikleri görebileceğiniz zaman).
Eski kafayı çıkarmayı unutmayın.
- 1. "hg commit" - hiçbir şey olmuyor!
- 2. Mercurial geri al üç hg itme
- 3. Mercurial
- 4. Mercurial Commit (TortoiseHG)
- 5. Mercurial (hg) sadece belirli dosyaları işliyor
- 6. Mercurial: list "hg diff" dosyaları
- 7. hg sözdizimi ne anlama gelir: commit B
- 8. "hg qnew" nasıl geri alınır?
- 9. hg çekmeyi birleştirmek için Mercurial komutu; hg up
- 10. 'git commit --amend' yaptıktan sonra repoya nasıl basılır?
- 11. Mercurial: make `hg log` dosyaları göstermiyor mu?
- 12. Mercurial hg Subatpository issue - "abort: bilinmeyen revizyon"
- 13. Mercurial hg birden fazla depoya hizmet veriyor
- 14. Mercurial
- 15. hg unshelve çalışmıyor
- 16. Mercurial geri dönüş "değişiklik bulunamadı" iken değişiklikler var!
- 17. Mercurial ile çoklu kafaları itmek
- 18. Mercurial - "hg update -C" yaptıktan sonra kabul edilmeyen değişiklikleri geri alın
- 19. Mercurial (hg) dosyasını bir dosyaya ikili olarak işlemeye nasıl zorlarsınız?
- 20. Yerel depolar için Node.js için Mercurial HG kütüphanesi
- 21. Tüm eksik dosyalar için Mercurial 'hg kaldır' nasıl yapılır?
- 22. Mercurial Uzatma
- 23. Mercurial güncelleme arasındaki fark ve işlemediğinde bloğu
- 24. Geri döndürün Henüz birleştirilmemiş olan itme
- 25. Arka plan rengini geri döndürün javafx
- 26. Mercurial garip iletiler üretir
- 27. Mercurial ile tek bir dosyada mı kontrol edin?
- 28. Mercurial: Bazı durumlarda herhangi <code>hg commit</code> izin verilebilir önce Mercurial kullanıcılar yani <code>hg pull -u</code> çalıştırmak olduğunu zorlamak için bir ihtiyaç var
- 29. Hosting IISur üzerinde Mercurial
- 30. Mercurial dallanma ve yer imleri
Lütfen bu yanıtı, ayrıştırmadan sonra gerçekleşmemiş işlemleri yapmak için hangi adımların yapılması gerektiğini açıklayarak geliştirin. – akuhn
@akuhn, bence 'hg merge' ve sonra 'hg commit -m' message_for_the_last_commit'', ama geçmişi biraz karıştırıyor. – oblalex
Genel olarak, ya sadece 'yeni' ayrılan 'ipucu' işlemini kendiniz yaparsınız, böylece anlamlı bir hata mesajı verebilir ya da @oblalex'in önerdiği ve 'birleştirme' olarak yapacaksınız. Birçok durumda, yeni ipucu ile kullanılan mesaj olarak eski ipucunun (hg unbundle' tarafından bırakılmış) bırakılan mesajını almak isteyeceksiniz. –