微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在Mercurial中克隆分支?

假设我有一个善变的项目,我这样做:

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

这将从存储库中删除修订版REV及其后面的所有内容.

如果您不确定效果或是否真的想要这个,那么您应该只在克隆中执行此操作

MQ

另一种方法是弹出您不想进入队列的变更集.我不知道这是否适用于整个分支,我也不知道确切的命令.

克隆

基本上你克隆你想要保留的东西

hg clone --branch default original newclone

这将从原始克隆克隆到newclone,并且只克隆认分支.如果要克隆多于认分支,可以为要克隆的每个分支重复–branch NAME选项.

再次,确保您尝试使用新的克隆,并在将任何内容推送到中央存储库之前验证您是否获得了所需内容.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐