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

解决方法

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

  1. 先在游离状态下提交commit会产生新的ID,如图6116062,应以新的ID为准
git commit 

在这里插入图片描述
此时会进入编辑模式,让我们输入提交的描述
按“I”进入编辑模式 此时可以输入
按“wq”保存文件并退出

执行完之后我们会发现产生了新的ID(956c85b…)注意:这是随机生成的
在这里插入图片描述

  1. 创建一个临时分支:tmp
git branch tmp  955c85b   # 以自己的id为准

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

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

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

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

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

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐