【发布时间】:2013-09-27 16:02:27
【问题描述】:
在将 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
git ls-tree -r 152c27e 的运行会吐出树的所有子节点,这确认它是我们 Java 项目的 src 文件夹。
此外,git fsck --full 成功且没有错误。对象和对象目录的形状是 100%,并且没有悬空项。对象的权限似乎很好。
我们可以做些什么来仔细检查存储库的状态,或者尝试重现错误消息?
【问题讨论】:
-
你试过
git show 152c27e57424de6ae0df1f0d32feba7beae6e2fb吗?此外,它看起来像是 SourceTree 特定的问题,您可能有更多机会寻求他们的直接支持。 -
是的,
git show只显示三行:tree 152c273、main/和test/。我在这里问的原因是显示的错误对话框显然是 Git 错误消息,但我不知道该消息的原因是 Git 问题还是 SourceTree 问题。我只是想重现他们正在运行的任何导致问题的命令。 -
您可以尝试 grep git 源(和 SourceTree 源代码,如果可用)来查找它是否是所述错误消息的来源。
-
可能是嵌入式git和系统git的问题。尝试在工具->选项菜单中升级(注意:完全未经测试)
-
当您
git clone存储库并将其与 SourceTree 一起使用时,是否会出现相同的错误?