Mercurial API:repo.changectx(更改)不存在!

时间:2011-01-16 00:40:18

标签: python mercurial mercurial-extension

我正在尝试为Python IDE制作一个Mercurial支持插件,我在理解API方面遇到了很多麻烦。现在我只是在进行实验来理解api的不同命令的用法,但我找不到api的doc或类似的东西。

我的问题是r.changectx不起作用,因为r没有这个操作。我看到很多使用changectx函数的例子。

我的mercurial版本是1.7.3。非常感谢 !!

from mercurial import ui, hg


r = hg.repository(ui.ui(), "https://ninja-ide.googlecode.com/hg/")
c = r.changectx("setup.py")

# show some information about the changeset
print c # represented as the changeset hash
print c.user()
print c.description()
print

# let's take a peek at the files
files = c.files()
for f in files:
 fc = c[f]
 print " ", f, len(fc.data())

1 个答案:

答案 0 :(得分:3)

我认为它需要一个本地回购才能让它像那样工作。此外,您还需要changectx的修订版。

from mercurial import ui, hg, commands

myui = ui.ui()
repourl = "https://ninja-ide.googlecode.com/hg/"

commands.clone(myui, repourl, 'ninja')
r = hg.repository(myui, './ninja')
c = r.changectx("tip")

# show some information about the changeset
print c # represented as the changeset hash
print c.user()
print c.description()
print

# let's take a peek at the files
files = c.files()
for f in files:
 fc = c[f]
 print " ", f, len(fc.data())

编辑:this FAQ entry似乎证实它不适用于远程存储库。