我有一个存储库,其中有两个分支 MAIN 和 FEATURE1 。我分支后不久,我需要修复错误,然后用版本号标记 MAIN 。这些是分支后 MAIN 的唯一更改。我一直在 FEATURE1 工作,并添加了几个文件。
1--2----4--5
\
3--------6--7--8
注意错误修复与功能之间存在一个相互冲突的变化。
现在,我的功能已经完成,我想将 FEATURE1 (8)合并到 MAIN (5)中。但是当我执行合并时,我的任何更改都不会显示在 MAIN 分支中。
当我在没有提交的情况下执行合并时,我注意到了一些事情:
.orig
个文件(我不知道这些是什么)。这些标记为?
(未知操作),未提交。它几乎就像将 MAIN 作为来源而 FEATURE1 作为目的地,但我确定我&# 39; m合并到 MAIN 。我更新为 MAIN (5),右键单击 FEATURE1 (8),然后选择合并到本地... 。生成的分支按预期显示为 MAIN 的一部分。
我之前从未使用过TortoiseHg或Mercurial。我已经习惯了TFS,而且我觉得我有相反的行为。
基本上,我希望我在 FEATURE1 中所做的更改出现在 MAIN 中。
答案 0 :(得分:0)
每当您更新到TortoiseHg中的其他修订版时,它会为您提供一个对话框,其中包含一个复选框,允许您放弃当前分支中未提交的更改。
放弃本地更改,不备份(-C / - 清除)
合并时,信息类似但含义非常不同。
放弃合并目标(其他)修订版
的所有更改
虽然第一个意味着您要撤消未提交的更改,但第二个意味着您要合并分支而不会带来任何更改。
另一方面,我无法弄清楚为什么会有这个功能。为什么要在没有迁移更改的情况下合并分支?关闭分支似乎更容易。