.bashrc在没有我的批准的情况下运行别名:致命:不是git存储库(或任何父目录):。git


0

我在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疯狂?谢谢

Answers:


3

特定的子命令样式没有任何区别 - 无论哪种方式,只要它们在双引号内,它们就会被扩展 在'alias'行被解释时 。为了避免这种情况,要么将alias命令放在单引号中,要么至少使用反斜杠 - 转义 $ 要么 ` 符号。

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

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.