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

Why does hglib not allow status for a revision and changes?

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

hg status --change REV

但是使用hglib调用status会报错:

>>> client.status(rev=-1, change=True)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Users\asdf\envs\Whosebug\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)

这行得通,但我想知道为什么另一个不行。我错过了什么?

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 - 过滤输出以仅显示修改过的文件。