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
posted @ 2018-04-23 12:44  发挥哥  阅读(2963)  评论(0编辑  收藏  举报