我想在我的hgrc文件中定義一個調用多個命令的Mercurial命令別名。例如,我想這樣做如下:如何(有可能)創建運行多個命令的hg命令別名?
[alias]
giveup = revert --all --no-backup; purge
syncprod = fetch production; push production
這將允許我這樣稱呼hg syncprod
,並讓它調用獲取,然後一推。無法確定此功能是否存在。 (我猜這意味着沒有。)
我想在我的hgrc文件中定義一個調用多個命令的Mercurial命令別名。例如,我想這樣做如下:如何(有可能)創建運行多個命令的hg命令別名?
[alias]
giveup = revert --all --no-backup; purge
syncprod = fetch production; push production
這將允許我這樣稱呼hg syncprod
,並讓它調用獲取,然後一推。無法確定此功能是否存在。 (我猜這意味着沒有。)
使用的shell別名風格是這樣的:
giveup = !$HG revert --all --no-backup ; $HG purge
雖然,我個人只希望爲那些一個bash別名,這樣我就可以完全跳過hg
部分。
我無法對之前的回答發表評論,但對於希望在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
有沒有辦法在Windows上做到這一點? – 2011-02-24 03:17:22
在cygwin下,我懷疑同樣會起作用,但除此之外,也許你最好寫一個giveup.bat(或cmd或其他powershell使用的)。 – 2011-02-24 05:01:08
您可以從別名中調用powershell或cmd。例如。我在PowerShell中使用以下別名: 'revised =!powershell -NoProfile -Command hg ci -m $(cat .hg \ last-message.txt)' – 2012-04-07 23:11:34