Domanda

Sto cercando di fare un plugin supporto Mercurial per un IDE Python e ho un sacco di problemi di comprensione della API. In questo momento sto solo facendo esperimenti per comprendere gli usi dei diversi comandi delle API, ma non riesco a trovare doc del api o qualcosa di simile.

Il mio problema è che r.changectx non funziona perché r non ha questa operazione. E vedo un sacco di esempi che utilizzano la funzione changectx.

La mia versione è 1.7.3 mercuriale. Molte grazie !!

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())
È stato utile?

Soluzione

penso che ha bisogno di un pronti contro termine locale per farlo funzionare così. Inoltre, è necessario una revisione per 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())

Modifica: questa FAQ sembra corroborare che non funzionerà su repository remoti.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top