我在我的分支的default
分支中有一系列提交,等待审核并合并上游。现在我需要填写一个单独的bug修复程序,我想返回到repo和remote之间的原始分支点。我可以手动查看更改日志,并hg up
查看修订版,但这很不方便。
是否有执行此操作的命令 - 在上一次提交的上游创建新分支并切换到它?
我需要这个命令,但是对于Mercurial https://commondatastorage.googleapis.com/chrome-infra-docs/flat/depot_tools/docs/html/git-new-branch.html
答案 0 :(得分:1)
hg update
非常强大,我建议您查看REVSET帮助页面,其中详细说明了可用于指定所需修订的运算符和谓词。
例如,hg update -r parents(first(outgoing(UPSTREAM)))
应该更新到尚未推送到UPSTREAM的最旧变更集的父级,这似乎是您要求的。当最旧的未压缩变更集具有单个父变换(即,它不是合并的结果)时,这将起作用。
如果它有两个父母,您可以使用hg update -r p1(first(outgoing(UPSTREAM)))
或hg update -r p2(first(outgoing(UPSTREAM)))
代替,但您需要知道要在哪个父母处开始分支。
如果您将以下内容放在Mercurial配置文件中,也可以创建别名:
[alias]
newbranch = hg update -r parents(first(outgoing(UPSTREAM)))
newbranch
部分是你想要的命令。