Git撤销提交db511ba时遇冲突无法提交,如何解决?
解决Git Revert冲突及提交失败问题
方案一:彻底放弃本次Revert操作
如果不想继续撤销db511ba提交,直接回到操作前的状态:
- 终止revert流程,恢复分支到执行revert前的状态:
git revert --abort - 处理工作区剩余修改:
- 若要保留暂存/未暂存的修改:正常提交或继续开发即可,未跟踪文件
foo.txt可按需保留或删除 - 若要丢弃所有未提交修改:
git reset --hard git clean -f foo.txt
- 若要保留暂存/未暂存的修改:正常提交或继续开发即可,未跟踪文件
方案二:继续完成Revert操作(解决冲突后提交)
如果坚持要撤销db511ba提交,按以下步骤处理:
- 定位并解决冲突文件
- 查看
git status输出的「未合并路径」,找到标记为U的冲突文件(对应错误信息里的相关文件) - 打开该文件,手动处理
<<<<<<<、=======、>>>>>>>标记的冲突内容,保留需要的代码 - 标记冲突已解决:
git add <冲突文件名>
- 查看
- 暂存无关修改(可选但推荐)
工作区的暂存/未暂存修改如果和本次revert无关,先临时存起来避免干扰:git stash push -m "temp stash for revert" - 完成Revert提交
执行提交完成revert流程:
此时会打开默认的revert提交信息,确认后保存退出即可。git commit - 恢复暂存的修改(若执行了步骤2)
revert完成后,恢复之前stash的内容:git stash pop - 处理未跟踪文件
未跟踪文件foo.txt可按需删除或添加到仓库。
内容的提问来源于stack exchange,提问作者pitosalas
相关产品推荐
相关产品推荐

