我有兩個分支,分別命名爲X和Y.先前創建了X,y是最新的分支。現在我在分支'Y',我修改了一些文件。我需要提交已修改的文件,並且需要將更改提交到「X」分支而不是「Y」分支。我如何用汞汞或烏龜汞來做到這一點? (如何切換到「X」分支並提交更改?)如何使用龜甲汞切換分支提交?
回答
我使用擱置了這樣的操作:https://tortoisehg.bitbucket.io/manual/2.9/shelve.html
當你的「Y」分支,把你所有的改變貨架。然後切換到'X'分支並從您的書架上恢復更改。
你可以
- 提交到Y分歧
- 然後移植/它嚴重到X分支
- 然後從Y分歧剝離變更
至於導致它看起來像你COMMITED它到X而不是Y
如果你還沒有提交更改,那麼你應該能夠做到如下:
hg update X
hg commit
除非您在文件中的相同位置更改了某些相同的文件,否則這應該足夠了。如果你有,那麼你的hg update X
命令應該失敗。此時您有幾個選項。
您可以使用Mercurial隊列(mq)。
你可以把你的電流變化成一個補丁隊列:
hg qnew stufftomove -e
你會與你使用任何編輯器創建一個提交信息呈現。繼續,當它最終被提交時,用你想要的任何東西填寫你的提交信息。如果您不使用-e,它只會創建沒有提交消息的修補程序隊列。稍後,如果需要,您可以使用hg qrefresh -e
作出提交消息。創建補丁隊列
後,隨着彈出它關閉:
hg qpop
現在移動到X分支:
hg update X
現在推補丁隊列。這將適用的補丁文件:
hg qpush
這可以去幹淨,或者如果你確實有合併衝突,你會得到名爲.rej文件已創建的消息。那些向您顯示無法自動應用的更改的部分。
如果您有名爲.rej文件,手動應用沒有工作的碎片,然後運行 汞柱qrefresh
這將更新有了新的變化補丁文件。
當一切看起來像你希望它是什麼,我們也可以將補丁隊列到真正與
hg qfinish stufftomove
文件更改。現在應該在你想他們是在樹枝上被提交提交。
另外,如果你已經犯下了錯誤的分支的變化,並沒有推你的變化(或者讓他們拉)到遠程倉庫,你可以這樣做:
hg qimport -r <revision to import>
在這一點上,繼續從hg qpop
開始的上述說明。
如果您可以更具體地瞭解文件和分支的狀態,我可以更具體地幫助您。無論如何,我希望這會有所幫助。
旁註:如果你有合併衝突在上面的步驟,不喜歡與名爲.rej的文件時,您可以使用hg rebase
,這將能夠幫助您解決在您最喜愛的合併工具的衝突(或無論你配置什麼工具)。希望這可以幫助。
- 1. 如何跳過龜汞
- 2. 切換到hg-flow模式:如何重建提交和分支
- 3. 提交修改如何幫助您在Git中切換分支?
- 4. 如何生成汞/烏龜汞的每用戶貢獻圖?
- 5. 切換分支以及移動已提交但未提交的提交
- 6. 提交文件重命名烏龜汞變化
- 7. 汞提交修改創建新的分支機構
- 8. 將一些提交到一個新的分支中汞
- 9. 如何追蹤龜的龜甲?
- 10. NetBeans:Git:切換到不同的分支,提交失敗
- 11. 切換分支沒有提交工作代碼
- 12. 在GIT中使用未提交的自動生成的更改切換分支
- 13. 切換分支提示保存文件
- 14. 如何在不切換的情況下提交不同的svn分支
- 15. 如何切換到源代碼樹中的其他分支以提交代碼?
- 16. Git切換分支
- 17. howto:使烏龜汞和烏龜Svn共存
- 18. 使用EGIT切換到分支工作
- 19. 更改分支頭使用烏龜svn
- 20. 龜龜SVN問題提交和更新
- 21. 如何找到提交的分支?
- 22. 如何提交更改到新分支
- 23. 如何從提交ID找到分支
- 24. Git如何結帳分支提交
- 25. 如何提交併創建分支?
- 26. 如何將提交與分支關聯
- 27. TortoiseSVN切換,分支和分支工作
- 28. git:切換分支並忽略沒有提交的任何更改
- 29. GIT中替換其間與另一分支提交提交
- 30. 如何在使用Git分支/合併的開發分支中提交buggy提交?
您的意思是「分支」在拓撲意義上(並行開發流程)還是Mercurial命名分支的着色意義上? – Face