从mercurial API获取tip修订信息

时间:2014-10-01 08:59:29

标签: python api mercurial

如何从python脚本获取远程mercurial存储库的tip修订信息?

我想要的是:hg tip。 AFAIK hg命令需要本地存储库。

我发现了另一种使用mercurial API的方法:List remote branches in Mercurial。 但我无法通过这种方式找到有关mercurial API的文档。

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:2)

这是"官员"这样做的方式(根据您链接的选定答案):

$ ssh ry4an.org hg -R /srv/hg/unblog id -r tip
30117899846f tip

如果您没有对远程仓库的ssh访问权限,那么您可能拥有hgweb访问权限,这可以通过以下网址获取有关最多提示提交的信息:http://ry4an.org/hg/unblog/raw-rev/tip

你可以肯定使用Mercurial内幕,就像@resi的优秀答案一样,但请确保你已经意识到actively discouraged

答案 1 :(得分:1)

它类似于链接中的第二个答案(List remote branches in Mercurial):

from mercurial import ui, hg, node

peer = hg.peer(ui.ui(), {}, 'http://hg.python.org/cpython')
print node.short(peer.lookup("tip"))

我已经使用mercurial 2.3.2对此进行了测试,有关更多信息,您可能需要查看wireproto.py(类Wirepeer)。