为什么hglib不允许修改和更改的状态?

时间:2015-09-02 06:51:54

标签: python mercurial hglib

要获取更改列表,this answer会给出命令行:

hg status --change REV

但使用 status 调用 hglib 会出错:

>>> client.status(rev=-1, change=True)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Users\asdf\envs\stackoverflow\lib\site-packages\hglib\client.py", line 1384, in status
    raise ValueError('cannot specify both rev and change')
ValueError: cannot specify both rev and change

为什么我们不能同时指定revchange

在回答another recent question时,我发布了:

client.status(rev=[start, end], modified=True, added=True)

这有效,但我想知道为什么其他没有。我错过了什么?

1 个答案:

答案 0 :(得分:2)

hg status --change REV仅指定--change标志,而不是--rev标志。

--change REV选项显示变更集REV引入的更改。 --rev REV选项显示变更集REV和工作目录之间的更改。

如果您尝试hg status --change REVx --rev REVy,则会出现与client.status(rev=-1, change=True)相同的错误changerev选项都将更改集作为参数

请注意,--modified--change REV不同 - 过滤输出以仅显示修改过的文件。