Warm tip: This article is reproduced from serverfault.com, please click

git-以编程方式检查HEAD是否分离?

(git - Programmatically check if HEAD is detached?)

发布于 2018-09-07 11:23:37

我想知道脚本中是否处于“ HEAD detached”状态。

目前,我解析的输出,git status但我不喜欢这样做,因为我听说解析用于人的Git输出是一种不好的做法-我想要一个程序友好的界面来告诉我HEAD是否分离。我也不想手动查看.git/HEAD或解析git descriptiongit branch

有任何想法吗?

Questioner
iBug
Viewed
0
rodrigo 2018-09-07 20:07:56

最简单的命令可能是:

$ git symbolic-ref -q HEAD

并检查退出状态:0表示正常; 2表示退出。1已分离。

来自的文档git-symbolic-ref

-q, --quiet
   Do not issue an error message if the <name> is not a symbolic ref
   but a detached HEAD; instead exit with non-zero status silently.