hg:如何将新创建的分支推送回中央存储库?

时间:2010-08-02 19:55:06

标签: version-control mercurial

我通过

克隆了中心存储库
hg clone my_project my_project_1

然后在切换到新创建的仓库后,我将其标记为新分支

hg branch v1

在我发布的新克隆内部

hg ci -m "branch created"

但是当我尝试将更改推回到我克隆的原始存储库时 我收到了这个错误:

abort: push creates new remote branches: v1!

如何将分支推入原始存储库? 我是否通过尝试将分支推入原始仓库来做正确的事情?我只想拥有一个包含分支的集中式存储库,我可以从中检查分支机构。 处理这个问题的最佳方法是什么? 谢谢。

1 个答案:

答案 0 :(得分:59)

这取决于您使用的Mercurial版本。该命令曾经是hg push -f ...hg push --force ...以强制在远程存储库中创建新分支(通常可以)。

但是,使用-f还允许您在远程存储库中创建新头(通常 OK),因此当前版本的Mercurial(1.6及更高版本)具有{{1允许您创建分支但不创建新头的--new-branch选项,因此命令为:

hg push

您还可以使用hg push --new-branch 标志限制推送到您正在处理的分支,因此:

-b