将SourceTree与Git一起使用时出错:"摘要"失败,代码为128:致命:无法读取树

Cra*_*tis 9 git atlassian-sourcetree

当我们使用SourceTree和我们的特定Git存储库时,我们一直看到弹出一个对话框,并显示错误消息:

"摘要"失败,代码为128:致命:无法读取树152c27e57424de6ae0df1f0d32feba7beae6e2fb

每天多次弹出错误消息.

日志中没有其他信息,我们无法在命令行上使用Git重现错误消息.当我们进行一些测试时:

Craig@DEMO-PC /d/project (major)
$ git cat-file -t 152c27e
tree

Craig@DEMO-PC /d/project (major)
$ git cat-file -p 152c27e
040000 tree 174f073109a9d0721b35e84140d0a7b29dc48ef9    main
040000 tree fb011d0153c1521441d583196a93f945dcb0df1e    test
Run Code Online (Sandbox Code Playgroud)

的运行git ls-tree -r 152c27e吐出来的树,这证实它是所有的孩子src我们的Java项目的文件夹中.

此外,git fsck --full成功没有错误.对象和对象目录的形状为100%,并且没有悬空项.对象的权限似乎很好.

我们可以做些什么来仔细检查我们的存储库的状态,或尝试重现错误消息?

Von*_*onC 7

它可能是一个许可问题,其中:

  • 从当前用户的角度来看,权限看起来很好
  • 运行SourceTree的帐户的权限不正常

2013年2月有一个类似的案例报道,没有任何答案.
但它不仅限于SourceTree:

擦除工作空间可以完全解决问题.

某种程度上,Redmine使用的私钥用于在gitolite配置中重命名的git用户进行身份验证.

因此,这通常与作为与预期用户不同的用户访问数据的进程有关.