hg只在本地存储库“干净”时才拉/更新

时间:2012-03-13 20:49:48

标签: mercurial

我想编写一个递归下降目录树的脚本,并在所有“干净”的存储库上执行hg pull -u - 即没有本地差异,传出变更集或任何其他可能使它们与远程。 (该脚本也会进行重建等)。

有没有一种好方法可以检查存储库是否“干净”?请记住,我可能会从bash或python脚本中执行此操作。

1 个答案:

答案 0 :(得分:0)

hg status是你的朋友。但是,你应该注意“干净”的含义。如果目录结构中的所有文件都受版本控制,并且没有更改,则hg status应该不返回控制台输出,并且(可能)返回0。

如果这与您的清洁定义不符,您必须更加小心。例如,我通常不会将生成的文件(二进制文件,来自Latex的PDF等)添加到版本控制中,但它们位于我的目录结构中。在这种情况下,这些文件被列为“未知”,我确信hg的返回码会有所不同。