Ado*_*obe 5 git github bitbucket
我尝试整天解决问题:当我尝试在空目录中拉或克隆存在的存储库时,我收到错误:
$ git clone https://bitbucket.org/path_to_repo/aroma
Cloning into 'aroma'...
remote: Counting objects: 1335, done.
remote: Compressing objects: 100% (1174/1174), done.
remote: Total 1335 (delta 618), rReecused 551 (deltea 72)
Receiving objects: 100% (1335/1335), 43.16 MiB | 3.78 MiB/s, done.
Resolving deltas: 100% (618/618), done.
fatal: fsync error on 'H:/Project/testrep/aroma/.git/objects/pack/tmp_pack_xqHCKb': Bad file descriptor
fatal: index-pack failed
Run Code Online (Sandbox Code Playgroud)
我尝试在config中设置pack.windowMemory大小和pack.packSizeLimit等等.同样的错误; [在我能够克隆存储库之前.但出了点问题
检查问题是否仍然存在:
C:\
而不是H:\
)git bash
)根据驱动器的性质H:\
,您可能会因上述性质而在访问/更新文件时遇到问题。
所以其他仓库找到邻居并且它仓库非常好拉和推。
如果其他存储库正在工作H:
(意味着您可以从这些存储库克隆/推送/拉取H:
),请尝试将错误的存储库复制(简单复制)到另一个文件夹,然后尝试从该其他文件夹克隆它。如果仍然失败,则说明其中的某些内容已损坏:是时候申请git fsck
检查了。
注意:使用 Git 2.42(2023 年第 3 季度),您现在可以使用现有的 Trace2 工具来了解有关fsync
事件的更多信息。
请参阅Beat Bolli ( )提交的 a27eece(2023 年 7 月 20 日)。(由Junio C Hamano 合并 -- --在提交 52d9dc2中,2023 年 8 月 2 日)bbolli
gitster
wrapper
:使用trace2计数器收集fsync统计信息签署人: Beat Bolli
正如在此线程开始的线程中提到的,trace2 计数器应该用于对事件进行计数,而不是临时静态变量。
wrapper.c
将两个fsync静态变量转换为trace2计数器,减少与trace2子系统之间的耦合。
调整 t/t5351 以匹配 Trace2 计数器输出格式。计数器不是针对每个线程的,因为被替换的计数器也不是针对每个线程的。