git 处于游离的状态的解决办法

Posted 发挥哥

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了git 处于游离的状态的解决办法相关的知识,希望对你有一定的参考价值。

在idea下将代码回退到某一历史版本,修改后push提醒detaced head,即处于游离状态,使用 git branch命令(辅助git status查看提交状态)查看:

在git bash下切换到项目根路径下执行以下步骤来解决:

  1. 创建一个临时分支:
git branch tmp  bf0040f(在游离状态下提交commit会产生新的ID,如图bf0040f,应以新的ID为准)

创建分支的命令:git branch 分支名 操作的ID,此时并没有切换到tmp分支上去,但是tmp分支上的内容就跟最后提交的bf0040f一样。

  1. 切换到需要合并的分支(例如master):
git checkout master

切换了分支之后我们需要将tmp合并到检出的分支(master):

git merge tmp

最后我们只需要push对应的master分支中提交的信息。

  1. 删除刚刚创建的临时分支
git branch -d tmp

以上是关于git 处于游离的状态的解决办法的主要内容,如果未能解决你的问题,请参考以下文章

Git分支合并冲突解决(续)

git常见问题集合

git submodule 游离分支(detached)产生原因及解决办法

Git 分离头指针 HEAD

Java对象在Hibernate持久化层的状态

Java对象在Hibernate持久化层的状态