Wenn Sie mit der Verwendung des Changeset-Hash in Ordnung sind, dann können Sie mit
$ hg identify -i http://hg.repo.com:8000/myrepo
beginnen die ID der Spitze changeset zu bekommen. Sie können dies wie folgt mit Klon kombinieren in einer Unix-Shell:
$ hg clone http://hg.repo.com:8000/myrepo \
"myrepo-$(hg -i identify http://hg.repo.com:8000/myrepo)"
Um es bequemer zu bedienen, ich einen Alias für das schaffen würde:
[alias]
vclone = !DEST=$(basename "$1")-$($HG identify -i "$1");
echo "destination directory: $DEST";
$HG clone "$1" "$DEST"
Dies lässt Sie hg vclone foo
tun bekommen ein foo-<ID>
Klon.
Im Alias kümmerte ich mich um die Berechnung eines geeigneten Basisnamens aus der Klon URL und um das Ziel auf die gleiche Weise zu drucken, wie hg clone
normalerweise tut, wenn Sie kein explizites Ziel angeben. Schließlich habe ich darauf geachtet, die Argumente so zu zitieren, dass Sie ein Verzeichnis mit Leerzeichen im Namen klonen können. (Wenn Sie auch Zeichen wie "
in Ihren Namen haben, dann haben Sie Pech ohne bessere Unterstützung für Zitate in Mercurial-Shell-Aliasen.)
Können Sie klarstellen, was Sie meinen, vielleicht mit einem Beispiel? –