我正在使用下面的命令来查找在我的存储库中是否存在一个带有branch-name的本地git分支。这对吗?有没有更好的办法?
请注意,我是在脚本中执行此操作的。因此,如果可能的话,我希望使用管道命令。
git show-ref --verify --quiet refs/heads/<branch-name>
# $? == 0 means local branch with <branch-name> exists.
我正在使用下面的命令来查找在我的存储库中是否存在一个带有branch-name的本地git分支。这对吗?有没有更好的办法?
请注意,我是在脚本中执行此操作的。因此,如果可能的话,我希望使用管道命令。
git show-ref --verify --quiet refs/heads/<branch-name>
# $? == 0 means local branch with <branch-name> exists.
当前回答
Git branch -l <branch-name>
如果分支存在,则返回分支名称;如果分支不存在,则返回none
其他回答
在windows批处理脚本有点不同,
git rev-parse --verify <branch>
if %ERRORLEVEL% == 0 (
echo "Yes"
) else (
echo "No"
)
Git branch -l <branch-name>
如果分支存在,则返回分支名称;如果分支不存在,则返回none
让我们将其称为git is_localbranch(您需要在.gitconfig中添加别名)。
用法:
$ git is_localbranch BRANCH
来源:
git branch | grep -w $1 > /dev/null
if [ $? = 0 ]
then
echo "branch exists"
fi
要验证远程上是否存在分支,这对我来说很好:
git branch -r | grep -qn origin/${GIT_BRANCH_NAME}$ && echo "branch exists" || echo "branch does not exists"
如果您能设法包括grep。
git branch | grep -q <branch>