Mercurial'de yanlışlıkla yaptığım (zorlanmayan) son değişikliği nasıl geri alabilirim?
Mümkünse, TortoiseHg ile bunu yapmanın bir yolu tercih edilecektir.
Güncelleme
Somut durumumda bir değişiklik kümesi yaptım (zorlanmadı). Sonra sunucudan çektim ve güncelledim. Bu yeni güncellemelerle son taahhüdümün geçersiz olduğuna ve senkronize etmek istemediğime karar verdim. Görünüşe göre, hg rollback
aradığım tam olarak bu değil, çünkü bu benim taahhüdüm yerine çekmeyi geri alacaktır.
strip --keep
: stackoverflow.com/questions/29413851/… , MQ qimport'un yaptığı gibi, görevi doğrudan çözer. Alternatif olarak, rebase
yerel değişikliklerin de muhafaza edilmesi ve herhangi bir çatışma olmaması senaryoda daha iyi olabilir . ( İstenilen grafiğin son hedefi olduğunda, özellikle hızlı ileri olmayan bir durumda, her iki daldan bazı birleşik değişiklikleri korumak için bir birleştirme kullanın .) Ayrıca, 'geçmişi hala koruyan' dalı kapatmak da geçerli olabilir (ancak bir birleştirmeden farklı olarak) istenen son duruma bağlı olarak.
hg strip --keep
komut kullanımını yapmak, ancak bir revizyon, örneğin sağlamanız gerekir: hg strip --keep -r .
. Bu cevap iyi açıklıyor stackoverflow.com/a/19064016/1286571
hg rollback
sonra tekrar çekmeye ne dersiniz ?