由于我尝试在两次提交之间切换,我最终遇到了GitExtensions为我的存储库报告location.location_photos.order(:featured).paginate(page: 1, per_page: 4)
的情况。这是(no branch)
的输出:
我还没有使用过分支,或者无论如何都是故意的。我的最后一次提交是git reflog
。然后我开始试验。我查看了之前的提交(91d96ff
),并确认工作集已恢复为该提交时的文件(除了日期戳 - 我不能习惯它!)。然后我再次检查699415c
,然后在这两次提交之间反弹几次,最后一次结账离开头部91d96ff
,那是我开始的时候。自上次提交以来,我对源进行了更改。
以下是GitExtensions如何展示它:
我注意到通常在91d96ff
旁边的小红色三角形缺失了 - 我认为这表明头部在哪里(或者在这种情况下不是)。我猜我有一个独立的头?
为什么Git报告这个"没有分支"?从中恢复的清洁和正确的方法是什么?我需要GitExtension Master
吗?
我很想知道在这种状态下我可能做了什么。
答案 0 :(得分:1)
你可能做了相同的检查提交,如下所示:git checkout 91d96ff
这将使你处于一个独立的状态,这就是你的UI在报告" no branch"时的含义。
回到"正常"最好的办法将git stash
您的本地更改,然后git checkout master
(或您最初使用的任何分支)然后git stash pop
恢复您可能拥有的本地更改。如果有任何冲突,那么它们将在那时呈现给您。
这是因为你是"退房"不同的提交。
答案 1 :(得分:0)