Git 在旧电脑上工作会让你的脑袋变得超脱

Git 在旧电脑上工作会让你的脑袋变得超脱,git,github,Git,Github,我在我的项目中工作,我有以下承诺: 承诺3 承诺2 提交1 出于几个原因,我选择了Commit2,但我没有删除Commit3,所以我开始着手Commit2。一旦我完成了,我想提交,这是头分支,它给了我一个错误,就像有其他提交或类似的东西,所有的工作都消失了 现在,如果我尝试移动到提交,并且收到此错误: 这样做将使您的工作副本成为一个“分离的头部”,这意味着您将不再位于分支上。如果要在此之后提交,可能需要再次签出分支或创建新分支。这样行吗 所以我想我的工作在某个地方,但我不知道它在哪里,也不知道如

我在我的项目中工作,我有以下承诺:

承诺3

承诺2

提交1

出于几个原因,我选择了Commit2,但我没有删除Commit3,所以我开始着手Commit2。一旦我完成了,我想提交,这是头分支,它给了我一个错误,就像有其他提交或类似的东西,所有的工作都消失了

现在,如果我尝试移动到提交,并且收到此错误:

这样做将使您的工作副本成为一个“分离的头部”,这意味着您将不再位于分支上。如果要在此之后提交,可能需要再次签出分支或创建新分支。这样行吗

所以我想我的工作在某个地方,但我不知道它在哪里,也不知道如何恢复它


我不知道该在标题上写些什么,所以请随意编辑。非常感谢。

这里有一种方法:

git commit -am "Commit 4"         # Commit your changes
git branch -m master master_old   # Rename master
git branch -m master              # Make current branch master

这里有一种方法:

git commit -am "Commit 4"         # Commit your changes
git branch -m master master_old   # Rename master
git branch -m master              # Make current branch master

在离开分离的头部之前,请使用
git tag xxx HEAD
git branch xxx HEAD
为该头部创建一个ref,以便稍后使用或返回。如果您忘记这样做,请使用
git reflog
查找“丢失”的分离磁头。它们不会被删除。数字头@{8}:提交:提交文本。我在那里找到了!你知道我怎么才能把这个放回去吗@Elpiekay你到底想用“把这个放回去”来做什么?您可以运行
git checkout HEAD@{8}
将其签出,或者运行
git branch xxx HEAD@{8}
从其创建分支,或者运行
git merge HEAD@{8}
将其及其祖先合并到当前分支。但是最好在它之前使用sha1,因为HEAD@{8}并不总是指向它现在指向的那个commit。非常感谢它的工作!如果你想把它作为答案,我可以把它标记为解决方案。git reflog帮助我找到了“丢失”的头部。在您离开分离的头部之前,请使用
git tag xxx head
git branch xxx head
为该头部创建一个ref,以便您可以使用它或稍后返回。如果您忘记这样做,请使用
git reflog
查找“丢失”的分离磁头。它们不会被删除。数字头@{8}:提交:提交文本。我在那里找到了!你知道我怎么才能把这个放回去吗@Elpiekay你到底想用“把这个放回去”来做什么?您可以运行
git checkout HEAD@{8}
将其签出,或者运行
git branch xxx HEAD@{8}
从其创建分支,或者运行
git merge HEAD@{8}
将其及其祖先合并到当前分支。但是最好在它之前使用sha1,因为HEAD@{8}并不总是指向它现在指向的那个commit。非常感谢它的工作!如果你想把它作为答案,我可以把它标记为解决方案。git reflog帮助我找到了“丢失的”头部。