为什么我的Git仓库进入独立HEAD状态?
我今天结束了一个独立的头,与上面描述的相同的问题:git push说尽管我有本地更改,但一切都是最新的
据我所知,我没有做任何不寻常的事情,只是承诺并从我当地的回购中推出。
那么我怎么最终得到一个detached HEAD
?
任何不是您分支机构名称的提交结账将为您提供分离的HEAD。 表示分支尖端的SHA1仍会给出分离的HEAD。 只有结算本地分行名称才能避免该模式。
请参阅使用分离的HEAD进行提交
HEAD分离时,提交工作正常,除非没有命名分支更新。 (您可以将其视为匿名分支。)
例如,如果您先签出一个“远程分支”而不先跟踪它,那么最终可能会有一个分离的HEAD。
请参阅git:切换分支而不分离头部
我刚刚转载了这个意外:
列出远程分支
git branch -r
origin/Feature/f1234
origin/master
我想结账一个本地,所以我剪贴:
git checkout origin/Feature/f1234
普雷斯托! 分离HEAD状态
You are in 'detached HEAD' state. [...])
解决方案#1:
检查时不要将原origin/
在我的分支规范的前面:
git checkout Feature/f1234
解决方案2:
添加-b
参数,该参数从远程创建本地分支
git checkout -b origin/Feature/f1234
或
git checkout -b Feature/f1234
它会自动回落到原点
尝试
git reflog
这给你一个你的HEAD和分支指针在过去如何移动的历史。
例如:
88ea06b HEAD @ {0}:checkout:从开发转移到遥控/起源/ SomeNiceFeature e47bf80 HEAD @ {1}:拉动原点开发:快进
该列表的顶部是一个reasone,可能会遇到DETACHED HEAD状态...检查远程跟踪分支。
链接地址: http://www.djcxy.com/p/45049.html上一篇: Why did my Git repo enter a detached HEAD state?
下一篇: Compare and Contrast