假设我有一个善变的项目,我这样做:
hg branch whatever touch newfile hg add newfile hg commit -m "added newfile" --close-branch hg up -C default hg merge whatever hg push abort: push creates new remote branch 'whatever'! (did you forget to merge? use push -f to force)
如何删除分支以便hg branches -c不会在那里显示?令人沮丧的是,这不允许我推向bitbucket.我读了Documentation,但前两点我可能没有正确遵循(因为我一直得到错误,即使我合并).第三点,关于通过克隆删除我不明白该怎么做,因为我总是最终在我的回购中的功能分支.
解决方法
好吧,首先,您不必删除该分支.
警告就是这样,警告你应该仔细检查你确实在做正确的事情,而不是在不属于它的地方推动分支.
但是,如果要保留分支,只需执行警告所说的操作,使用-f选项进行推送:
hg push -f
跳闸
如果您启用了“mq”扩展名,则可以删除更改集:
hg strip REV
如果您不确定效果或是否真的想要这个,那么您应该只在克隆中执行此操作
MQ
另一种方法是弹出您不想进入队列的变更集.我不知道这是否适用于整个分支,我也不知道确切的命令.
克隆
基本上你克隆你想要保留的东西
hg clone --branch default original newclone
这将从原始克隆克隆到newclone,并且只克隆默认分支.如果要克隆多于默认分支,可以为要克隆的每个分支重复–branch NAME选项.