【发布时间】:2013-06-23 18:11:15
【问题描述】:
你如何判断你的头是否已经在 git 中分离了?我有一种感觉,这可能是我问题的根源。
【问题讨论】:
标签: git version-control branch
你如何判断你的头是否已经在 git 中分离了?我有一种感觉,这可能是我问题的根源。
【问题讨论】:
标签: git version-control branch
git branch
会显示
* (no branch)
master
develop
如果你处于分离状态。
【讨论】:
git status 应该告诉你所有相关的事情。
您可以手动查看 .git/HEAD 文件的内容。如果它有一个散列,你就分离了。如果有像ref: refs/heads/master 这样的引用,你就没有。
【讨论】:
另一种对脚本有用的替代方法是
git rev-parse --abbrev-ref --symbolic-full-name HEAD
这给了我HEAD 一个分离的头,或者其他情况下的分支名称。
【讨论】:
对于 git 2.22 及以上版本,可以使用命令git branch --show-current。在分离头状态的情况下,输出将没有任何内容。
如果您想在脚本中使用它,我们可以将其与wc 合并,如下所示:
git branch --show-current | wc -l
此命令将在分离头的情况下返回0,在有效分支的情况下返回1。
【讨论】: