HEAD detached at head的处理

由 Jefsky 发布于 2024-01-04

今天push的时候发现push不上去,经过一系列的操作,发现自己的head被指向在一个没有分支名称的修订版本上,此时我出于了游离状态(detached HEAD),应该就是这样导致我commit操作提交不到在任何分支上,想了一下应该是之前的git checkout操作造成的。因为git checkout本质上是修改HEAD里面的内容来让它指向不同分支的,而HEAD文件指向的分支就是我们当前的分支,但是有时候HEAD不会指向任何分支,这就是我遇到的情况了。

之后灵机一动,把这个head创建一个分支,在merge到master上就好了

$git branch temp 97e6710

使用git branch 分支名 操作ID 这句命令能够创建一个新的分支,但要注意此时我们还没有切换到这个分支上,这个分支上面代码跟我刚才提交完之后的一样.

$git checkout master

切换到master分支

$git merge temp

把上传commit合并到master分支

$git push

最后就可以push上去了

$git branch -d temp

接着把临时分支删除就好了

相关命令:

git status //查看git状态

git branch -a //查看所有分支