0

我有这个 git 命令,我经常将它用作 zsh 函数。

git push --set-upstream origin $(git rev-parse --abbrev-ref HEAD)

我想要实现的是创建一个别名并能够调用它git upstream而不是仅仅调用$ upstream一个 zsh 函数。我得到的最接近的是:

[alias]
    upstream = "!fn() { git push --set-upstream origin $(git rev-parse --abbrev-ref HEAD) }; fn"

$(...)但是,我的猜测是,由于某些解析错误,它确实失败了。它显示给我的错误是:

> git upstream
fn() { git push --set-upstream origin $(git rev-parse --abbrev-ref HEAD) }; fn: -c: line 1: syntax error: unexpected end of file

我试图通过别名做的事情可能吗?如果没有,你能指导我找到任何一种来源来创建git upstream命令吗?

4

2 回答 2

1

原来我非常接近,但只是错过了一个分号!‍♂️</p>

[alias]
  upstream = "!f() { git push --set-upstream origin $(git rev-parse --abbrev-ref HEAD); }; f"
于 2020-06-30T17:45:32.457 回答
1

例如在您的本地 bin 目录中~/bin 创建一个git-upstream文件:

#!/bin/sh
git push --set-upstream origin $(git rev-parse --abbrev-ref HEAD)

然后使其可执行

chmod u+x git-upstream

现在你可以打电话git upstream

于 2020-06-30T17:43:05.620 回答