这是一个展示我的问题的简单示例。如果我这样做:
git commit -m "`date --utc`"
执行date --utc
,并将结果放在提交消息中。
但是,当我将它别名为testcomit时:
git config --global alias.testcommit 'commit -m "`date --utc`"'
执行git testcommit
不会执行`date --utc`
部分,而是将其逐字地放在提交消息中。
那么,如何让这个别名执行date --utc
?
答案 0 :(得分:7)
如果别名扩展以感叹号作为前缀,则将其视为shell命令。
所以你可以使用:
git config --global alias.testcommit '!git commit -m "$(date --utc)"'
请注意,您必须将git
放在那里,因为您现在正在指定整个 shell命令。
($()
而不是反引号是无关的,但它更好,所以你应该开始使用它。)