有时我会尝试同时读取和写入Git存储库。 但之后,当我尝试提交文件时,我收到以下错误消息:
libgit2引发了一个错误。 Category = Index(LockedFile)。该 索引被锁定。这可能是由于同意或崩溃造成的 过程
提交按预期完成,为什么我收到此错误消息?我该如何摆脱它?
(如果LibGit2Sharp开发人员看到这一点:错误消息中存在拼写错误:concuRRRent。):D
答案 0 :(得分:8)
Dropbox也会干扰git操作。我在任何git sync之前暂停dropbox同步。
答案 1 :(得分:5)
索引是git对象数据库和工作目录之间的网关通道。它是在制作提交(即分段,取消暂存,...)或签出文件时使用的。因此,同时执行这些操作可能会引发这种错误,因为两个操作都会竞相获取对索引的访问权。
在libgit2级别完成一些工作,以便为线程读取操作提供更好的索引使用体验(例如,参见 libgit2/libgit2#2108 )。
但是,根据您执行的读/写操作类型,您可能不需要浏览索引:
如果LibGit2Sharp开发人员看到:错误消息中存在拼写错误:concuRRRent。
好抓!您是否想要打开Pull请求以帮助我们解决此问题? ; - )
答案 2 :(得分:1)
我得到了同样的错误,我删除了.git文件夹中的index.lock文件,其中创建了我的存储库,然后问题得到了解决。