具有应用条件的Git别名

问题描述 投票:2回答:1

我创建了一个简单的别名,它将对原点进行推送,然后检查dev分支

就是这个

origin-push = !git push origin && git checkout develop

我想添加一个检查只在分支主机上执行,否则只显示一条简单的消息。怎么做 ?

--Windows用户 -

git
1个回答
2
投票
  • '!'之后会发生什么?是一个shell脚本。您可以在此命令行中添加任何您想要的内容。
  • 查看当前分支名称的一种方法是:git rev-parse --abbrev-ref HEAD

所以类似于:

! [ "$(git rev-parse --abbrev-ref HEAD)" = "master" ] && ...

应该管用

完整命令(thx @phd):

origin-push-master = ![ "$(git rev-parse --abbrev-ref HEAD)" = "master ] &&
    git push origin && git checkout develop ||
        echo The current branch is not master >&2

如果这个动作变得过于复杂而不是一个简单的单行,那么简单别名的替代方法是:

创建一个名为git-origin-push的脚本,该脚本应该可以从$PATH访问。

© www.soinside.com 2019 - 2024. All rights reserved.