2010-11-11 24 views
51

我在Mercurial中跟踪了一个文件。我可以通过hg log看到它的历史。如何查看最近版本和上次签入的变更集之间的差异?在一个文件上查看两个变更集之间的差异

+0

不是“最新版本”一样的“最后签入的变更版本”? – 2010-11-11 12:45:28

回答

58

hg diff -r <first_revision_number>:<other_revision_number> filename

,将做到这一点

e.g hg diff -r 0:1 default.aspx

希望它有助于

+0

有趣的:没有在'hg diff -h --verbose'中找到它。真的应该在那里。 – CodeLurker 2017-08-29 16:36:24

37

如果你知道的版本号,然后说什么PaulStack是正确的。

如果您明确想知道分支的当前提示与之前的提示之间的区别,则可以使用快捷方式。当然,如果文件没有改变,diff将不会显示任何有用的信息。

hg diff -r -1:. filename

-1说,在这个分支以前的变更。 '.'表示当前的变更集。你可以使用-2-3等,但一旦你点击一个合并点,它会变得更有趣。 (参考:http://hgtip.com/tips/beginner/2009-10-05-shortcuts-for-specifying-revisions/

如果你想要的是你的工作空间的突出变化,那么它只是hg diff文件名。

HG新手的几个有用的地方是http://hgtip.com

HG权威指南http://hgbook.red-bean.com/

像HG特定的更多HG站点的堆栈溢出是Kiln支持站点。 http://kiln.stackexchange.com。窑炉建立在HG之上,并使用经过修改的TortoiseHG客户端,因此大多数问题和答案都是有用的。即使你不是用户,他们也会回答问题。

+1

这是(我认为)比标记的答案更有帮助。 – podperson 2015-11-13 00:53:24

+0

有趣的:没有在'hg diff -h --verbose'中找到它。真的应该在那里。 – CodeLurker 2017-08-29 16:36:34

0

这里还去^语法父修订,其中除了.(工作目录的父)做一个有用的组合:

显示DIFF之间的电流检出版本与其父版本(这个工作解决tip-1限制)

hg diff -r .^:.