我已经开始使用Mercurial来满足我的(我们的)版本控制需求。我现在已经到了需要创建功能分支的地步。然而,既然我已经开始研究它 - 我试图推动我的改变,我不断收到关于新远程头的警告。这是愚蠢的,我知道会有一个新的远程头,这毕竟是一个分支?
如果不使用强制推动,我应该如何创建分支并推动它们没有这个问题,因为它肯定不是正确的方法,对吧?
我考虑过使用单独的存储库,但这对于功能分支来说感觉很愚蠢。
欢迎任何帮助!
答案 0 :(得分:13)
到目前为止,最好的指南是史蒂夫·洛什的“A Guide to Branching in Mercurial”。
Mercurial总是会抱怨在遥控器上创建新头。在创建新头时,您必须使用--force
或--new-branch
。
使用TortoiseHg时,可以通过Workbench的Synchronize
视图完成相同的操作。点击Options
,然后根据需要选择Allow push of a new branch
或Force push or pull
选项。
它表现的原因是Mercurial开发人员希望有意识地决定在遥控器上创建一个新头。他们认为典型的工作流程应该在推送之前合并更改。
答案 1 :(得分:3)
当我刚刚开始使用mercurial时,Joel Spolsky的这个教程帮助了我。它也可能对你有所帮助: