Mercurial API: repo.changectx (ändern) nicht vorhanden ist!
-
11-10-2019 - |
Frage
Ich versuche, eine Mercurial Unterstützung Plugin für eine Python IDE zu machen und ich habe eine Menge Probleme, die API zu verstehen. Im Moment bin ich nur Experimente zum Verständnis der Verwendung der verschiedenen Befehle des api zu machen, aber ich kann nicht die api doc oder etwas Vergleichbares finden.
Mein Problem ist, dass r.changectx nicht funktioniert, weil r diesen Vorgang nicht hat. Und ich sehe eine Menge Beispiele, die die changectx-Funktion verwenden.
Meine Quecksilber-Version ist 1.7.3. Danke vielmals !!
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())
Lösung
ich denke, es für sie zu arbeiten wie die lokalen Repo muss. Außerdem müssen Sie eine Revision für 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())
Edit: diesem FAQ-Eintrag scheint zu erhärten, dass es nicht die Arbeit an Remote-Repositories.