我正在试图摸索Mercurial,希望我只是在这里感到困惑!
我有一个存储库('main'),我已经克隆('clone'),这两个都在我自己的机器上。两者是完全同步的。
我决定使用命名的分支,所以下一次我在“克隆”上提交时,我使用了一个分支名称“case1212”,虽然它似乎已经正确地处理了克隆上的提交,但我不能将这些更改推回到“main”。给出的错误是:
abort: push creates new remote branch 'case1212'!
...and它表明我可能需要先合并?我应该在那个“克隆”存储库上合并什么?当我尝试从“main”中拉出时,没有任何变化。
我很确定我真的想让它在我的‘主’库中创建一个远程分支,这样从它更新的人就可以看到那个分支。
发布于 2010-03-03 02:14:21
Mercurial的默认行为阻止您创建远程分支。如果你想这样做,你需要强制推送。
Synchronize菜单在您显示的窗口中,有一个用于强制推送的选项。
发布于 2011-01-13 06:22:42
Tortoise现在有一个可能比Force pull or push
更安全的选项Push new branch
。命令行工具有一个标志--new-branch。
更新:新的tortoise界面让人更难找到它。切换到Synchronise视图,然后单击options并选择allow push of a new branch。
发布于 2010-03-03 02:12:55
它警告您,您的推送将创建新的远程机头(在本例中为分支)。如果你对此没意见,听起来也没问题,你可以用push -f
来推动。
这里有这个检查,所以如果您不想让case1212分支返回到主服务器,您可以执行hg push -r default
,这样您就不会看到这个警告,也不会发送case1212。
一旦你对case1212执行了这个操作,你就不会再看到这个警告,因为case1212已经存在了。
较新版本的mercurial使该警告在新头部是新分支的情况下听起来不那么可怕。
https://stackoverflow.com/questions/2365483
复制相似问题