如何检测当前的 HEAD 是否是未生成的分支?
“git rev-parse HEAD --”输出
fatal: bad revision 'HEAD'
但是 git 也会为所有其他输入输出这个,比如“git rev-parse noHEAD --”。
“git branch”返回一个空输出。
我是否必须阅读 .git/HEAD 并检查内容是否以“ref:”开头并且引用不存在?
最佳答案
But git also outputs this for all other inputs like "git rev-parse noHEAD --".
不同之处在于,根据定义,HEAD
必须存在于存储库中。
如果您有一个不是有效修订的 HEAD
,那么它一定指向一个尚未生成的分支。
例如:
> git checkout --orphan newbranch
> git rev-parse HEAD --
fatal: bad revision 'HEAD'
与检查分支机构相比:
> git checkout master
> git rev-parse HEAD --
如果 HEAD
不存在或已损坏:
> git rev-parse HEAD --
fatal: Not a git repository (or any of the parent directories): .git
关于git - 如何检测 HEAD 是否指向未出生的分支?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28852902/