git - 为什么当我 git status 时看到“HEAD detached from”?
问题描述
我试图切换到另一个提交,所以我做了:( git checkout 031c057
按顺序进行第四次提交)
在我切换回 a06bbac
then 之后,我做了一些修改,然后我做了一个“提交”
现在当git status
我看到:
$ git status
HEAD detached from a06bbac
nothing to commit, working tree clean
这是我的 git 日志:
f24cb85 (HEAD) seconde template
a06bbac (mostafa-test) sc just for test
19c2ad5 (origin/mostafa-test) first sample template
031c057 sc
f6c72a0 make component for table and header
89a0dd3 material-table ready
748ce3b first grid & first table
605562f (master) git ignore fix
1ec70f4 sc
eadfa97 (origin/master, origin/HEAD) Initial commit
如何让它正常?
解决方案
HEAD
是一个特殊的符号引用。它是指分支头,而不是直接提交。当它指的是不是分支头的东西时,我们说它HEAD
处于分离状态。
运行后git checkout a06bbac
,您的 Git 状态类似于
HEAD ----------------> a06bbac ---> 19c2ad5 ---> ...
^
|
mostafa-test ------------+
而不是
HEAD ----> mostafa-test --> a06bbac ---> 19c2ad5 ---> ...
结果,运行git commit
没有mostafa-test
按应有的方式更新。
要解决这个问题,您可以简单地 checkout mostafa-test
,然后使用git reset
来修复它。
$ git checkout mostafa-test
$ git reset f24cb85
推荐阅读
- embedded-linux - 如何使用 u-boot 和 x86 挂载正确的 /boot 目录
- python - Spring Batch ScriptItemProcessor
- amazon-ec2 - aws ec2 describe-snapshots 不返回标签
- sql - 使用 SQL 将 MS Access 信息返回到 Excel 电子表格
- php - Symfony 没有用户令牌,或者您忘记将控制器放在防火墙后面 @Security
- google-apps-script - 我如何显示带有超链接的图像?
- php - 使用 hubspot api 的 PHP curl 代码适用于多个订单,但有时会突然失败而没有任何响应
- python - 收敛到相同种群的遗传算法的交叉
- python - 如何获得上述人物的 3D 图?
- c# - ASP.NET Core 5.0 - 带颜色的全尺寸列