2013-04-24 69 views
1

我經常使用git commit --fixup=<commit>並希望將其縮短爲git fixup <commit>。偶爾我想添加其他標誌(例如-a)。所以我已經安裝支持一個額外的標誌($2)別名:如何將可選參數轉發到Git別名

[alias] 
    fixup = !sh -c 'git commit -m\"fixup! $1\" \"$2\"' - 

可以這樣概括爲支持標誌的任意號碼?

回答

1

我相信這樣的事情應該爲你工作:

[alias] 
    fixup = "!_() { local commit_id=\"$1\"; shift; git commit -m \"fixup! $commit_id\" \"[email protected]\"; }; _" 

它使用shell函數和移位操作剝離的第一個參數。然後[email protected]可用於其餘參數。