我想设置一个查看分支的描述的命令,查找后,通过shell的方式设置,目前不报错,但是只是返回当前分支名,没有返回分支描述
git config --global alias.desc "! f() { if [ -z $1 ];then currBra=`git symbolic-ref -q --short HEAD`;else currBra=$1;fi;git config branch.$currBra.description; }; f "
有懂的大神帮忙看下哪出错了?
我想设置一个查看分支的描述的命令,查找后,通过shell的方式设置,目前不报错,但是只是返回当前分支名,没有返回分支描述
git config --global alias.desc "! f() { if [ -z $1 ];then currBra=`git symbolic-ref -q --short HEAD`;else currBra=$1;fi;git config branch.$currBra.description; }; f "
有懂的大神帮忙看下哪出错了?
5 回答2.9k 阅读
3 回答2.7k 阅读
3 回答987 阅读
1.3k 阅读
344 阅读
solution
将双引号改成单引号。
原因
如果是双引号,因为你是在 shell 中执行的,
$1
会被当成变量解析成字符串。执行
git config --global alias.desc
查看,你会看到$1
消失,得到的结果为:例如下面这段脚本,得到的结果为
v=123
:如果是以文件的方式配置就不会出现这个问题。