我对共享存储库的本地副本做了一系列愚蠢的步骤,我正在寻找一种方法来修复它。步骤是:
我使用书签来拥有一个开发分支的多个负责人,其他人使用:
-o---o---o-----o--- <- dev branch \----1----1------ <- another head of the dev branch, where I committed stuff
一段时间后,我创建了一个新分支,仍然是本地的
/---------------x <- new branch -o---o---o-----o--- <- dev branch \----1----1------ <- another head of the dev branch, where I committed stuff
对于一个只包含我的代码的头,我在另一个分支上做了一个变基
/-1'--1'-- <- rebase /---------------x <- new branch -o---o---o-----o--- <- dev branch \----1----1------ <- another head of the dev branch, where I committed stuff
然后,我合并了变基,然后,在几次提交之后,我合并了默认值
----------d-\ <-default \ /-1'--1'\ \ /---------------x--------x--x-x-x-- <- new branch -o---o---o-----o--- \----1----1------
现在,我想将我的新分支推送到服务器(hg push --new-branch -b newBranch
),但我得到了abort: push creates new remote head
,因为提交1'
属于开发分支。
什么是正确的做法?我想避免创建这个额外的头。
更新:
根据请求,这是以下输出hg heads
:
changeset: 839:f2033d695fcd <- want to push this
branch: newBranch
tag: tip
user: me
date: Wed Oct 31 13:05:51 2012 +0100
changeset: 826:7fde19d7f467
branch: devBranch
user: my-collegue
date: Tue Oct 23 14:59:42 2012 +0200
changeset: 820:23853bbf68df <- the part after rebase that got merged
branch: devBranch
user: me
date: Mon Oct 22 15:36:26 2012 +0200
changeset: 807:899344cfb145 <- obsolete (branch with 1's)
branch: devBranch
parent: 711:454f29c03fb1
user: me
date: Mon Oct 22 15:36:26 2012 +0200
changeset: 712:d5e8a62a7f5f <- default, needs to stay
parent: 648:2bbcc01aa191
user: me
date: Wed Aug 22 16:21:09 2012 +0200