在mercurial 2.1中,pull和incoming命令现在在没有更改的情况下返回代码为1。那么,现在有没有一个替代命令可以让我在命令行上做下一个类似的事情?
hg pull && echo "No changes, carry on."
一个很好的例子是:checkoutmanager现在抱怨说,在更新一个多变的结账时出现了问题,而实际上根本没有变化:https://bitbucket.org/reinout/checkoutmanager/issue/17
请参阅mercurial 2.1发行说明,其中提到了pull(但不包括传入)。https://www.mercurial-scm.org/wiki/UpgradeNotes#A2.1:_phases.2C_various_minor_changes
该返回代码更改将在下一个次要版本中恢复。
请参阅:https://www.mercurial-scm.org/pipermail/mercurial-devel/2012-February/037986.html
您可以执行hg incoming
,如果返回代码为1,您就知道没有更改。
pull
的问题是,当它返回1作为返回代码时,它意味着"没有更改"或"未解析的文件",而incoming
的情况并非如此,当您的返回代码为1时,您可以放心地说没有更改。
在伪代码中,它会给出这样的结果:
hg incoming
if(returncode = 0)
hg pull
else
echo "No changes, carry on."