标签:sp 文件 问题 log bs ad ef nbsp 方法
HEAD detached from 是一个临时的头指针,正常的头指针是指向分支的,这种情况下头指针是游离在分支之外。
虽然可以在本地进行一切的git操作,但是如果要想远程库推送的时候就会出现问题。
解决方法如下:
1.git fetch origin _branch:_branch _branch 是本地不存在的远程库分支
先把远程库的分支拉到本地,这时候会在本地创建一个_branch的分支
现在git branch -va 会发现之前的临时头指针没有了,所有文件改动也消失了
没关系,进行下一步
2.git reflog show HEAD@{now} -10
这个命令会把HEAD指针所有的动作显示出来。从中可以清楚的看到,在临时的指针中提交对应的commit id
找到需要恢复的commit ,记下前面的commit id
3.git branch temp efa64f5
新建一个名字叫temp的分支,用这个分支代替之前的临时指针,现在切换到temp下会发现一切都回来了
但是还是不能推送啊。原因是temp是我们本地的分支,远程库中并没有这个分支
所以
4.git checkout _branch
切换到从远程库拉取到的_branch分支
5.git merge temp
将temp分支合并到_branch分支上,有冲突就解决冲突
6.git push origin _branch
OK,推送到远程库。
HEAD DETACHED push origin失败问题解决
标签:sp 文件 问题 log bs ad ef nbsp 方法
原文地址:http://www.cnblogs.com/iwangzc/p/4073117.html