如何(是否可能)创建运行多个命令的hg命令别名?

时间:2011-02-23 22:33:22

标签: mercurial

我想在我的hgrc文件中定义一个调用多个命令的Mercurial命令别名。例如,我想做类似以下的事情:

[alias]
giveup = revert --all --no-backup; purge
syncprod = fetch production; push production

这将允许我调用hg syncprod并让它调用fetch然后推送。无法确定是否存在此功能。 (我猜这意味着没有。)

2 个答案:

答案 0 :(得分:29)

使用shell别名样式:

giveup = !$HG revert --all --no-backup ; $HG purge

虽然,我个人只是为那些创建一个bash别名,所以我可以完全跳过hg部分。

答案 1 :(得分:8)

我无法对之前的答案发表评论,但对于其他希望在Windows上执行此操作的人来说,以下语法对我有用,无需使用PowerShell或cygwin。

giveup = !hg revert --all --no-backup && hg purge

或者,无论恢复是否成功,此版本都将执行清除:

giveup = !hg revert --all --no-backup & hg purge

可以将两个以上的命令串在一起,例如:

shebase = !hg shelve && hg rebase && hg unshelve