.bashrc 未经我的批准运行别名:致命:不是 git 存储库(或任何父目录):.git

.bashrc 未经我的批准运行别名:致命:不是 git 存储库(或任何父目录):.git

我在 bash_profile 中发现了这一点,我已将罪魁祸首缩小到:

alias initialpush="git push -u origin `git symbolic-ref --short -q HEAD`"

我无法正确获取 bash_profile:

cchilders:~ 
$ src
fatal: Not a git repository (or any of the parent directories): .git

换成其他风格也没用​​,同样的问题:

alias initialpush="git push -u origin $(git symbolic-ref --short -q HEAD)"

我认为这只会发生在 Mac 上,我回家检查后才能确定。我的脚本是在 Ubuntu 上编写的。我不记得这个错误发生在我上班时有 Mac 的时候。我怎样才能阻止这个 bash_profile 发疯?谢谢

答案1

具体的子命令样式没有任何区别——无论如何,只要它们在双引号内,它们就会被扩展在解释“别名”行时。为了避免这种情况,请将别名命令放在单引号中,或者至少使用反斜杠转义$`符号。

alias initialpush='git push -u origin $(git symbolic-ref --short -q HEAD)'

相关内容