我想创建一个运行 git pull origin <current branch name>
的别名
我可以通过 git rev-parse --abbrev-ref HEAD
获取当前分支名称.
但是如何将第二个命令放入 bash 别名中的第一个命令中?
我已经尝试过
alias gup="git pull origin `git rev-parse --abbrev-ref HEAD`"
和
alias gup="git pull origin $(git rev-parse --abbrev-ref HEAD)"
但两者都会产生别名中的初始分支名称,而不是运行命令时的分支名称。
最佳答案
直接的问题是,当定义别名时,命令分站会在双引号内展开。定义。使用单引号可以通过推迟命令替换直到您实际使用别名来解决这个问题。
alias gup='git pull origin $(git rev-parse --abbrev-ref HEAD)'
但是,您可以通过使用 shell 函数来省去尝试正确引用的麻烦。
gup () {
git pull origin $(git rev-parse --abbrev-ref HEAD)
}
关于git - 如何在 bash 别名中扩展命令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23507074/