我一直在我的工作计算机上使用git bash处理开发分支中的项目。我刚试图检查到主分支,因为我打算合并更改,但是当我尝试这样做时,命令行无限期挂起,直到我用CTRL + C杀死它。
如果我再次尝试结帐,则会收到以下错误:
另一个git进程似乎正在此存储库中运行,例如 由'git commit'打开的编辑器。请确保所有流程 终止然后再试一次。如果它仍然失败,那就是一个git进程 可能早先在此存储库中崩溃: 手动删除文件以继续。
然而,删除index.lock文件后,再次尝试使用git checkout只是挂在终端中,并且在我再次终止进程之前永远不会取得任何进展!等!
有没有人遇到过这个,如果有的话,你是怎么解决这个问题的?
答案 0 :(得分:3)
我最近一直遇到同样的问题,它似乎与我的树中Sublime Text的积极索引锁定文件有关 - 如果你正在使用ST然后尝试删除锁定文件,关闭ST然后运行{{ 1}}再次。
答案 1 :(得分:1)
与上述答案相关。我在Windows上遇到了Eclipse和Git Shell的这个问题。
您可能已按照以下步骤进入这种情况:
要解决此问题:
请注意,git状态现在显示为modified: filename
切换到Eclipse,它说磁盘上的文件已更改 - 可以选择重新加载。
git checkout -- filename
现在应该可以签出分支。
答案 2 :(得分:0)
我在文件上打开了Textpad,我认为它的锁定导致了这一点(与提到Sublime Text的积极索引锁定文件的spiralx相同)。即使我关闭了Textpad,我仍然无法切换分支。我重新启动了我的虚拟机,然后一切都很好-不再挂了。 :-)
答案 3 :(得分:0)
在使用Total Commander创建并浏览新文件夹时,我遇到了同样的问题。
我的解决方法是:
git status
-检查以前尝试结帐分支的尝试是否有所更改。git checkout -- .
撤消更改,这将重置所有未提交的更改!现在我可以结帐了。