【问题标题】:reference environment variable in zsh alias [duplicate]zsh别名中的引用环境变量[重复]
【发布时间】:2021-06-07 22:17:00
【问题描述】:

我使用别名来节省 git 命令的时间,其中之一是“git push origin master”。问题是,我的一些仓库现在使用“main”。

在某些目录中创建表示“git push origin main”而在其他目录中表示“git push origin master”的 zsh 别名的正确方法是什么?

【问题讨论】:

标签: git shell zsh alias


【解决方案1】:

有几种方法可以处理这个问题。如果你的目标是推送 current 分支,你可以写HEAD:git push origin HEAD

如果你想推送 default 分支,那就有点棘手了,因为 Git 本质上并没有默认分支的概念。如果你想使用远程的当前分支,在 GitHub 上是默认分支,你可以这样写:

$ git push origin $(git rev-parse --abbrev-ref origin/HEAD | cut -d/ -f2)

请注意,您可能需要运行一次git remote set-head -a origin 来设置origin/HEAD,如果远程分支名称发生更改,您将需要运行它,但这是自动选择正确分支的最简单方法(其中,诚然,这并不容易)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-01-27
    • 2020-08-27
    • 1970-01-01
    • 1970-01-01
    • 2021-06-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多