新手问题 hg 如何不合并解决多 heads?

chancedoor · 2013年06月04日 · 最后由 ShiningRay 回复于 2013年06月04日 · 4712 次阅读

hg 有个 head 是不小心删除了很多有用文件 然后也提交了。。 现在我要怎么把这个 head 去掉?merge 的话好像没有冲突的文件还是会删除

如果这个 head 确实不需要 merge 回去,搜了一下发现这个:http://stackoverflow.com/questions/3688263/mercurial-beheading-a-head 但愿有用。

注:我自己以前稍微用过一阵子 hg, 但已经很久不用了所以很生疏。但愿我对 head 的理解没错。

#1 楼 @5long 恩 之前也看到这个了 先留着吧 以后那些删除了的文件再做修改 有了冲突 应该就行了

  1. 没 push 出去的话可以 hg rollback

  2. 建议启用 rebase 和 mq 扩展

hg 中,未 push 出去的 changesets 是 draft 状态,push 或 pull 过之后就是 public 状态 public 状态不能变更 而 draft 状态可以进行 rebase strip 等等

可以直接 strip 这个 head

  1. 可以使用 backout,撤销此次改动

#3 楼 @ShiningRay 就是 push 了呀…… 以往其实就算弄出 heads 来 merge 就好了 可这次是连 merge 都 merge 不了……不科学 人类果然还是不够强吗?

#4 楼 @ChanceDoor backout 吧,然后再合并

需要 登录 后方可回复, 如果你还没有账号请 注册新账号