我在git中失去了当前的头部分支

时间:2016-04-24 16:36:30

标签: git head

当我从Develop分支切换到之前提交的分支时,head分支是我当前的分支,但分支没有显示在我的分支列表中 (CMD:git branch)。

当我完成一些工作时,我不小心直接切换到开发分支,哦,天哪,我失去了这些变化,我怎样才能找到变化的一部分?

3 个答案:

答案 0 :(得分:0)

您可以使用git reflog来确定以前的工作副本的位置。一旦您确定了相关提交,您就可以git checkout <commit>来回复它。

答案 1 :(得分:0)

使用reflog找出发生的事情,然后恢复到那一点

git reflog

您也可以随时使用reflog git reflog将显示更新HEAD的任何更改,并且检出所需的reflog条目会将HEAD设置回此提交。

每次修改HEAD时,reflog

都会有新条目
git reflog
git checkout HEAD@{...}

这会让你回到你想要的提交

enter image description here

<强> How to find and restore added content (even if it was not commited )

使用git fsck查找所有丢失对象(悬空),然后您可以使用git cat-file -p <sha-1>检查它们并恢复它们。

答案 2 :(得分:0)

git reflog git checkout HEAD @ {...}

谢谢大家。