当我在一个没有跟踪的分支上工作时,我结账了

时间:2013-09-20 11:40:04

标签: git merge git-branch

我当地在一个似乎没有被跟踪的分支上工作(它说:“无分支”)。我做了大量的提交,一切都很顺利。但后来我检查了主人合并我的分支。分支消失了。

有没有办法检索它?

@FIX(Knittl):

“git reflog”向我展示了类似

的内容
  • f85d248 HEAD @ {0}:commit:模态加载器修复
  • e17e71b HEAD @ {1}:commit:Module updates
  • 3fcb3d6 HEAD @ {2}:commit:Updated rules
  • dc99963 HEAD @ {3}:结帐:从582315b9104af7e8525857b74e5b74aed7c86c54转到主人

所以我做了“git checkout 582315b9104af7e8525857b74e5b74aed7c86c54”,这让我回到了独立的头上。

创建分支并与主

合并

感谢百万@knittl拯救我的屁股并提供正确的帮助。

1 个答案:

答案 0 :(得分:1)

你不在任何一个分支上(这就是为什么它说没有分支)。没有“未跟踪的分支”这样的东西,你可能意味着分离的HEAD

运行git reflog,您应该会在那里看到您的提交。然后为您需要的提交创建一个新分支(例如git branch my-feature HEAD@{1}

如果您再次发现自己处于分离状态,只需运行git checkout -b my-feature即可在当前的提交中创建新分支。这样,提交将变得可访问,并且不会被垃圾收集。 reflog通常只保留30天,并且可以随时删除早于此的条目。