创建一个运行两个命令并采用一个参数的 Mercurial 别名

Create a Mercurial alias that runs two commands and takes one paramater

我正在尝试创建别名并允许我提交更改并推送当前分支的所有更改集。
我是 运行 来自 Windows 命令提示符。

我读过 this question and 并且到目前为止有这个:

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

当我尝试这个时,出现错误:

abort: Commit: The system cannot find the file specified

如果我尝试:

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

然后它似乎可以工作(提示进行身份验证并推送提交),但我的提交消息是:

%1

甚至可以在 Windows cmd 提示符下实现吗?

在 Windows、%USERPROFILE%\mercurial.ini 上:

[alias]
ll = log -l

测试:

>hg ll
abort: too few arguments for command alias

> hg ll 5
changeset:...

Shell 别名 (%USERPROFILE%\mercurial.ini):

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

测试:

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

diff -r 5bb3aba44eab ....

P.S。 将 $N 与空格一起使用时,您应该使用引号(别名中的 !hg ci -m "" ...)。