我有一个中央Mercurial存储库,其中包含使用hgsubversion从SVN存储库克隆的历史记录。自从原始的hg repo被克隆以来,我已经撤消了对SVN信息库的其他提交;这些当前在默认分支中。
我也有一个命名分支。我已经将此分支(使用hg clone -b mybranch
)克隆到了本地系统。现在,我想获取仅在默认情况下存在的更改,并使它们在我的命名分支中可用。我看到的明显方法是在存储库上执行hg update mybranch
,然后hg merge default
并提交。这似乎很危险-如果我忘记在完成后更新回默认值,则将来从SVN进行的所有拉取都会将更改拉入mybranch。
我还考虑过,也许在克隆存储库时我不应该指定mybranch,而是克隆整个存储库并在本地更新为mybranch。因此,我可以将默认更改保存到本地克隆中,然后在此处进行合并。
这里正确的答案是什么?在共享存储库上执行此操作,请小心一点?克隆所有内容并在本地管理分支机构?还是我缺少一个更简单的解决方案?
最佳答案
通常,在Mercurial中,只要我执行我认为可能会引起问题的操作,我都会克隆该存储库并在那里进行尝试。然后,我可以选择将这些更改推回去,也可以在真正的存储库上执行操作。无论哪种方式,我都可以选择失败而不造成任何损坏。 克隆可以扔掉,如果您搞砸了,则不必保留它们。
关于mercurial - 使用Mercurial,如何将默认值更改为命名分支?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4751283/