【发布时间】:2013-04-29 07:37:59
【问题描述】:
问题
我很想知道是否可以创建一个别名来在 Git 中创建别名,即元别名,这样就可以不用输入git config --global alias.-whatever 而是直接写git alias-whatever。
背景:
-
我刚开始喜欢 Bash 和 Git,最近开始为
git config --global创建别名,例如git cfg和 from this page、git hist为:git log --pretty=format:"%h %ad | %s%d [%an]" --graph --date=short -
最后一个例子是通过输入设置的:
git config --global alias.hist 'log --pretty=format:"%h %ad | %s%d [%an]" --graph --date=short' -
使用我的
git cfg别名,我可以将其缩短为:git cfg alias.hist 'log --pretty=format:"%h %ad | %s%d [%an]" --graph --date=short'
但我想知道我是否可以进一步缩短它,以便 git cfg alias. 只是 git alias,部分是出于方便,部分是出于好奇,部分是出于了解更多关于 Git 和总体来说是 Bash。
尝试过的解决方案?:
我发现我可以调用
git $(echo 'cfg')并获得与git cfg相同的结果。-
所以我尝试通过输入以下内容为
alias创建别名:git cfg alias.alias '$(echo "config --global alias.")'希望我可以输入
git alias st status之类的内容来为git status创建一个快速别名git st。 -
不幸的是,这似乎不起作用,因为此时 Git 不再将
李>$(echo识别为命令,即使它像git $(echo 'cfg')一样在别名的上下文之外工作。鉴于示例中的st必须从执行的回显中直接附加到alias.,我也不确定这样的事情是否会起作用。
有人对如何实现这一点有任何建议吗?
【问题讨论】: