git恢复时卡住--因冲突而中止
这是我最近的3次承诺 提交CB5F9F5885049C20EA7D75E3FCC120F61F6D9A1 提交bad20788aa8b72622182cf28195b4b4e518d44a3 提交EEB8A571E300B52CD00351872467C47A32214 我想还原bad207~commit(哦,讽刺),所以我运行:git恢复时卡住--因冲突而中止,git,Git,这是我最近的3次承诺 提交CB5F9F5885049C20EA7D75E3FCC120F61F6D9A1 提交bad20788aa8b72622182cf28195b4b4e518d44a3 提交EEB8A571E300B52CD00351872467C47A32214 我想还原bad207~commit(哦,讽刺),所以我运行: git revert bad20788aa8b72622182cf28195b4b4e518d44a3 存在冲突,bad207和cb5f接触同一文件: You ar
git revert bad20788aa8b72622182cf28195b4b4e518d44a3
存在冲突,bad207和cb5f接触同一文件:
You are currently reverting commit bad2078.
(fix conflicts and run "git revert --continue")
(use "git revert --abort" to cancel the revert operation)
因此,我修复了冲突并运行:
git add conflicted_file
然后:
git revert --continue
哪些输出(在西班牙语中,这意味着在分支主节点上,您的分支将使用origin/master进行更新):
然后我被卡住了,我不能推送任何东西,也不能提交任何东西,我仍然处于恢复模式:
$ git push origin master
Everything up-to-date
$ git commit -a
En la rama master
Su rama está actualizada con «origin/master».
You are currently reverting commit bad2078.
nothing to commit, working directory clean
$ git status
En la rama master
Su rama está actualizada con «origin/master».
You are currently reverting commit bad2078.
(todos los conflictos corregidos: ejecute «git revert --continue»)
(use "git revert --abort" to cancel the revert operation)
$ git revert --continue
En la rama master
Su rama está actualizada con «origin/master».
You are currently reverting commit bad2078.
nothing to commit, working directory clean
无需提交,工作目录清理,我缺少什么?解决冲突后,a
恢复
提交包含的更改
因此无法继续,因为默认情况下,git
会阻止创建空提交
你可以:
——允许空参数,但我看不出这对您有什么用处
最后两个选项会影响分支历史记录,因此如果其他人正在处理此分支,则在重定基/合并时可能会遇到问题。如果您的冲突解决文件看起来与head中的当前文件完全相同,则git认为您不会提交任何更改,因此无法继续还原 如果您确实希望将此恢复提交添加到分支中,那么您可以用一种不重要的方式修改已解决冲突的文件,例如在注释中添加一个额外的空间,以诱使git允许您完成恢复提交
但在现实中,如果您的冲突解决文件看起来与当前头部中的完全相同,那么您可能首先不需要执行git还原。你的脑袋已经是你想要的了。所以只要中止还原:git revert--abort
bad2078
我感觉到你了,伙计。最近我自己做了一些甜蜜的dead909
尝试一下:git commit-am'revert bad2078'git状态
@SajibKhanit对提交不做任何说明:git log master
和&git fetch;git log origin/master
?不,通常当我还原提交时,应该有一个“还原的提交”,但我看不到我的git logI中有任何更改。我有同样的问题,调用git commit--allow empty
对我有效。我在上一次提交中解决了实际还原的合并冲突,因此我只需将分支指针重置为该真正的合并提交(git reset HEAD^
)
$ git push origin master
Everything up-to-date
$ git commit -a
En la rama master
Su rama está actualizada con «origin/master».
You are currently reverting commit bad2078.
nothing to commit, working directory clean
$ git status
En la rama master
Su rama está actualizada con «origin/master».
You are currently reverting commit bad2078.
(todos los conflictos corregidos: ejecute «git revert --continue»)
(use "git revert --abort" to cancel the revert operation)
$ git revert --continue
En la rama master
Su rama está actualizada con «origin/master».
You are currently reverting commit bad2078.
nothing to commit, working directory clean