你怎么知道你的头是否已被git分离?我觉得这可能是我问题的根源。
答案 0 :(得分:2)
git branch
会显示
* (no branch)
master
develop
如果你处于分离状态。
答案 1 :(得分:1)
git status
应该告诉你所有相关内容。
手动,您可以查看.git / HEAD文件的内容。如果它有一个哈希,你就分开了。如果有ref: refs/heads/master
这样的参考,你就不是。
答案 2 :(得分:0)
无需处理$GITDIR
的一种对脚本有用的替代方法是
git rev-parse --abbrev-ref --symbolic-full-name HEAD
这给了我HEAD
一个独立的头,或者给我一个分支名称的情况。
答案 3 :(得分:0)
对于 git 2.22 及以上版本,可以使用命令 git branch --show-current
。在分离头状态的情况下,输出将 no nothing。
如果您想在脚本中使用它,我们可以将它与 wc
合并,如下所示:
git branch --show-current | wc -l
此命令将在分离头的情况下返回 0
,在有效分支的情况下返回 1
。