auf @ der gvalkov Antwort zu erweitern, Sie durch das Schreiben einer Datei rheads.py
dies eine echte Erweiterung machen kann:
from mercurial import hg, commands, cmdutil, node
cmdtable = {}
command = cmdutil.command(cmdtable)
@command('rheads', commands.remoteopts, 'hg rheads [SOURCE]')
def rheads(ui, repo, source='default', **opts):
"""print (possibly remote) heads
Prints a series of lines consisting of hashes and branch names.
Specify a local or remote repository, defaulting to the configured remote.
"""
other = hg.peer(ui or repo, opts, ui.expandpath(source))
for tag, heads in other.branchmap().iteritems():
for h in heads:
ui.write("%s %s\n" % (node.short(h), tag))
konfiguriert Wenn in ~/.hgrc
mit
[extensions]
rheads = …/rheads.py
Sie können es laufen wie :
hg rheads
Ich versuchte es ein Befehl zu machen, die außerhalb jedes Repository aufgerufen werden kann, einfach die URL als Argument spezifiziert, konnte aber nicht die Syntax zu arbeiten:
commands.norepo += " rheads"
Ja, das ist, was ich vermuten würde. Danke für die nützlichen Informationen über hgweb und bitbucket. – Raoul
Ich frage mich, warum mercurial so konzipiert? Ich kann Revision des bestimmten Zweigs mit 'hg id -r' erhalten, aber kann keine Liste aller Zweige erhalten. –
neverov
Es * funktioniert *, wenn das "Remote" -Repository auf dem gleichen Host ist und durch a angegeben wird Dateipfad. h. wenn '.hg/hgrc' oder' hg paths default' nur einen Pfad anzeigen und nicht z.B. ein ssh URI. Auf diese Weise können Sie Zweige sehen, die immer noch in dem Sinne entfernt sind, dass sie nicht gezogen wurden. –