2

是否有命令列出上次更新期间更改的所有文件?

hg status --change tip

只给我最后一个变更集的文件。

我可以使用

hg status --rev FROM --rev TO

但后来我必须存储更新前的转速。

4

4 回答 4

4

您可以通过执行状态并传入当前和修订来计算出在执行之前会发生什么变化: .hg updatetiphg status --rev . --rev tip

正如蒂姆·德莱尼(Tim Delaney)所说,这将向您显示执行更新时更改哪些文件,但在更新后不会有任何影响。我假设您想知道在拉动后进行更新时发生了什么变化?在这种情况下,最好在进行更新之前知道会发生什么变化。

于 2013-01-28T15:36:54.633 回答
1

Mercurial 不会记录您运行的频率hg update,因此它无法告诉您上次更新触及了哪些文件。但是,它也不会影响受影响文件的修改时间,因此您可以查看它们的时间戳以了解发生了什么变化。要找出在过去五分钟内修改了哪些文件,请使用

find . -mmin -5 -print

另一种方法是记录 mercurial更新的内容,正如@icabod 建议的那样。

于 2013-02-02T01:44:04.960 回答
1

不会。一旦执行更新,Mercurial 不会存储有关工作目录先前状态的任何信息。在更新期间,它可能会存储一些状态以帮助在更新中断后恢复,但对您的用例没有任何用处。

于 2013-01-27T20:29:59.933 回答
0

如果执行“hg update”之后,您想了解更新期间发生了什么变化,您可以试试这个:

首先,使用“hg log -l nn”获取作为最新更新一部分的修订列表。

接下来,使用“hg diff -r nn”显示自更新修订以来的所有差异。

而且,如果您只想要更改文件的摘要,请使用“hg diff --stat -r nn”。

于 2014-09-19T17:03:16.187 回答