在idea下将代码回退到某一历史版本,修改后push提醒detaced head,即处于游离状态,使用 git branch命令(辅助git status查看提交状态)查看:
解决方法
在git bash下***(注意)切换到项目根路径下***执行以下步骤来解决:
- 先在游离状态下提交commit会产生新的ID,如图6116062,应以新的ID为准
git commit
此时会进入编辑模式,让我们输入提交的描述
按“I”进入编辑模式 此时可以输入
按“wq”保存文件并退出
执行完之后我们会发现产生了新的ID(956c85b…)注意:这是随机生成的
- 创建一个临时分支:tmp
git branch tmp 955c85b # 以自己的id为准
git branch 分支名 操作的ID
,此时并没有切换到tmp分支上去,但是tmp分支上的内容就跟最后提交的一样。
- 切换到需要合并的分支(例如master):
git checkout master
切换了分支之后我们需要将tmp合并到检出的分支(master):
git merge tmp
- 删除刚刚创建的临时分支
git branch -d tmp
OK 最后我们只需要push对应的master分支中提交的信息。