解决Git stash pop 后Git出现Another git process seems to be running in this repository......错误信息
Posted blueberrycode
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了解决Git stash pop 后Git出现Another git process seems to be running in this repository......错误信息相关的知识,希望对你有一定的参考价值。
摘要
当在dev开发分支开发新功能时,master分支出现紧急bug需要修复,命令git stash就可以暂存当前dev分支的代码改动,切换到master分支解决紧急bug。今天遇到一个git错误信息,是我在切回dev开发分支后把暂存的代码改动复原,但是代码复原后却无法提交,出现了git进程冲突的问题。具体错误信息如下:
Another git process seems to be running in this repository, e.g.an editor opened by ‘git commit’. Please make sure all processes
are terminated then try again. If it still fails, a git process
may have crashed in this repository earlier:
remove the file manually to continue.
经过错误信息的解决方案调研,找到了具体有效的解决方案。
解决方法
错误信息大意:git的进程已经在一个编辑器中被打开,请确保所有的进程都结束后再进行尝试,如果仍然失败,可能是上个运行中的git崩溃,请手动移除这个文件后再继续操作。
1.问题本质:
windows对进程的管理有个上锁机制,正常情况下,进程运行 ==> 进程上锁 ==> 进程结束 ==> 进程解锁。可能是我在切换分支时不小心强制关闭了运行中的git,从而导致git崩溃,所以上锁的index.lock没有解锁而产生冲突。
2.解决方案:
打开项目的文件夹,找到.git文件里的index.lock文件,错误信息中需要手动删除的文件就是这个index.lock文件。删除后再回到git继续操作命令,这样就完美的解决了git进程冲突问题。
总结
在操作git命令时需要注意git进程的状态,最重要的就是操作git命令需要谨慎,就算是遇到在紧急的任务,也需要心平气和的去解决,心急吃不了热豆腐。
以上是关于解决Git stash pop 后Git出现Another git process seems to be running in this repository......错误信息的主要内容,如果未能解决你的问题,请参考以下文章
提交的文件在 git commit、git stash 和 git stash pop 之后不出现
git命令之git stash apply和 pop 的区别
Git之解决git stash pop多次产生的文件冲突问题