2017-04-26 1 views
0

Ich versuche, einen Alias ​​zu erstellen und erlaubt mir, meine Änderungen zu bestätigen und alle Changesets für den aktuellen Zweig zu pushen.
Ich führe dies von einer Windows-Eingabeaufforderung aus.Erstellen Sie einen Mercurial-Alias, der zwei Befehle ausführt und einen Parameter verwendet

Ich habe gelesen this question und this question und so bis hierher haben:

ci-push = !hg ci -m $1 && hg push -b . 

Wenn ich das versuchen bekomme ich den Fehler:

abort: Commit: The system cannot find the file specified

Wenn ich versuche:

ci-push = !hg ci -m %1 && hg push -b . 

dann scheint es zu funktionieren (fragt nach auth und drückt das Commit), aber meine Commit-Nachricht lautet:

%1

Ist dies sogar von einer Windows-Befehlszeile möglich?

Antwort

1

Unter Windows %USERPROFILE%\mercurial.ini:

[alias] 
ll = log -l$1 

Testing:

>hg ll 
abort: too few arguments for command alias 

> hg ll 5 
changeset:... 

Shell alias (%USERPROFILE%\mercurial.ini):

[alias] 
ld = !hg log -r $1 && hg diff -r $1 

Testing:

>hg ld 154 
changeset: 154:5bb3aba44eab 
.... 

diff -r 5bb3aba44eab .... 

P.S. Wenn Sie $N mit Leerzeichen verwenden, sollten Sie Anführungszeichen verwenden (!hg ci -m "$1" ... in Aliase).

Verwandte Themen