我使用以下命令来查看我的存储库中是否存在带有branch-name
的本地git分支。这是正确的吗?有没有更好的方法?
请注意,我是在脚本中执行此操作的。出于这个原因,如果可能的话,我想使用use plumbing commands。
git show-ref --verify --quiet refs/heads/<branch-name>
# $? == 0 means local branch with <branch-name> exists.
发布于 2011-03-03 00:15:17
据我所知,这是在脚本中做到这一点的最佳方式。我不确定还有更多要添加的,但可能只有一个答案是“该命令可以做您想要的一切”:)
您可能需要注意的唯一一件事是分支名称中可能包含令人惊讶的字符,因此您可能希望引用<branch-name>
。
发布于 2015-02-28 07:24:14
当我在一个搜索引擎上搜索“git check if分支存在”时,这个页面是我看到的第一个页面。
我得到了我想要的,但我想提供一个更新的答案,因为最初的帖子是2011年的。
git rev-parse --verify <branch_name>
这基本上与接受的答案相同,但您不需要键入"refs/heads/“
发布于 2013-06-12 02:52:59
就快到了。
只需省略--verify
和--quiet
,如果分支存在,则得到散列,如果分支不存在,则什么也得不到。
将其赋给一个变量并检查是否有空字符串。
exists=`git show-ref refs/heads/<branch-name>`
if [ -n "$exists" ]; then
echo 'branch exists!'
fi
https://stackoverflow.com/questions/5167957
复制相似问题