在Git中很容易,因为remote/branch
指向的是与branch
不同的提交。如何使用Mercurial?
答案 0 :(得分:7)
如果您的意思是看到您的本地回购和您要推送的回购之间有什么不同,请尝试
hg outgoing
答案 1 :(得分:2)
有remotebranch extension可以为您提供类似Git的设置。它跟踪[paths]
中列出的存储库的远程磁头,并将它们公开为名为<path>/<branch>
的标签。这可以让你运行
$ hg diff -r foo/default
查看自default
存储库中的foo
分支以来发生了哪些更改。还有新的revset关键字可以让您执行
$ hg log -r "not pushed()"
得到什么
$ hg outgoing
可以,但没有任何网络流量。
答案 2 :(得分:2)
自Mercurial 2.1以来,还有一个纯粹的本地解决方案:阶段。 draft
阶段可能正是您所寻找的。有关详细信息,请参阅:
https://www.mercurial-scm.org/wiki/Phases
您可能会发现hg phase <rev>
和hg log -r "draft()"
很有趣。
答案 3 :(得分:1)
我会像其他人建议的那样使用hg outgoing
,但hg summary
也会告诉您。可能需要--remote
选项才能检查远程默认服务器。
答案 4 :(得分:1)
如果您需要选择更改集以进行进一步处理,则可以使用outgoing
revset predicate。这使您可以重新实现hg outgoing
hg log -r "outgoing()"
但真正的好处是你可以在其他环境中使用它,例如
hg strip "outgoing()"
答案 5 :(得分:1)