在过去6个月左右使用SourceTree时遇到有限的打嗝,我无法再向SourceTree提交任何文件。每当我尝试时,我都会收到此错误消息:
git -c diff.mnemonicprefix = false -c core.quotepath = false reset -q - Assets / ... 致命:无法创建'E:/ Users /.../。git / index.lock':文件存在。
如果当前没有其他git进程正在运行,这可能意味着a git进程先前在此存储库中崩溃了。确保没有其他的git 进程正在运行并手动删除文件以继续。
我知道其他一些问题,例如this,我已经尝试了我认为的一切,人们建议解决这个问题。为了安全起见,我会与你们分享我尝试过的并且没有工作过。
cd .git
del index.lock
通过命令行找不到文件,直到我创建了一个并删除它无济于事。我尝试了从链接帖子中找到的其他命令行命令,它们都没有工作。
我尽我所能确保没有其他程序同时运行git(没有IDE,没有Xcode,没有Tortoise,git-cola等)。
我关闭了SourceTree并多次重新打开它,因为这为很多人修复了它。
然后我将整个文件夹设置为不可读,因为它帮助了不同的用户。
然后我继续完全卸载了SourceTree - 同样的问题。
然后我重新启动了我的机器,因为这也是一些修复。
我读到可能是Visual Studio Source控件给了我一个问题,所以我按照这些步骤无济于事。
转到:工具>选项>来源控制
选择当前源控件插件为:无
然后我想我会尝试一个不同的项目,并发现它们也被打破了(我有4个不同的项目,现在它们都被打破了,任何时候我尝试播放任何我得到同样的错误)。< / p>
现在完全陷入混乱,我决定一劳永逸地解决这个问题。我删除了我拥有的每个SourceTree项目并删除了我的本地项目。然后我继续创建一个新的git仓库,将其导入BitBucket,再次卸载并重新安装SourceTree。这是我能为“新起点”做的最好的事情。然后,我将我复制的Unity项目保存到保存的未提交的更改中,复制了空本地克隆项目中的Assets,Library和Project设置文件夹。将Unity中的版本控制设置为可见元文件并强制文本,然后将这些文件提交到我的全新emtpy repo中,但仍然存在错误。
我之前曾经问过类似的问题,但我相信我已尽力而为,并涵盖了所有最可能的修复方法。
当我尝试登台时,我收到带有红色条的错误消息,然后只有在手动点击关闭按钮后,我才会看到一条消息,显示“Unstaging Files”,带有绿色条和“已成功完成”。我看了一下打开的.git文件夹,注意到虽然SourceTree尝试暂存,但它确实创建了index.locked文件,但它在创建后很快就会删除它(我们正在毫秒内谈论它已经消失了)。
我正在使用SourceTree版本1.9.6.0,我在4日(2天前)更新到了它,它在那天晚上和第二天早些时候工作得很好。我在第五天晚上在Unity中进行了几次脚本和场景更改,从那时起它就没有用了。我在Windows 10上使用Unity 5.0.4f3。
非常感谢任何帮助。
答案 0 :(得分:7)
我今天升级后遇到了确切的问题 - 确切地说是信件 - 并尝试了与您完全相同的步骤。没有任何效果。所以我在这里找到了旧版本的Source Tree:
https://www.sourcetreeapp.com/update/windowsupdates.txt
我回到了1.8.3,它现在运转良好。
https://downloads.atlassian.com/software/sourcetree/windows/SourceTreeSetup_1.8.3.exe
1.9.5可能有效,但我觉得回到1.8.x更安全
答案 1 :(得分:1)
FWIW,我和原版海报有同样的问题。我最近也升级到v1.9.6.0。我验证了index.lock文件不存在且可以创建,但没有尝试其他修复DPrate列表。