Git仓库故障求助:断链、悬空对象及解析错误问题
Git仓库存在断链、悬空对象及解析错误,无法推送本地变更
运行git fsck --full时检测到仓库存在断链、悬空对象和解析错误,执行的命令及完整报错如下:
organic@web:~/dev/docker-wordpress-caddy/m208$ sudo git fsck --full && sudo git gc --prune=now && sudo git fetch origin && sudo git merge origin/main && sudo git push --force origin main && sudo git config --global --add safe.directory /home/organic/dev/docker-wordpress-caddy/m208 Checking object directories: 100% (256/256), done. Checking objects: 100% (126502/126502), done. broken link from commit 637baaabc596726b36419a3a9afccc51b208d856 to commit 40aef486a77869d1110fc52e7a7c780ff86f2295 dangling blob 4135d8aaafc07d4f41995edff1d712d9b13ff4c7 missing commit 40aef486a77869d1110fc52e7a7c780ff86f2295 dangling blob 7ff52c0679c487402be9ac80c1cd2af92bd9c319 dangling blob 3c6e51010606936f19df210738a636db23cf60aa dangling blob f4a2b168ccb959d824ffe45ed99607562efbbffe dangling blob 20a42941d1a6ac09996f4aa14e1d3bf7800ff2c6 dangling blob 1fa8e92668ff4e4409ac027f7dd31f1be061c1d7 dangling blob bba9cd7f5ab2d60375ae59a1867c88f3eaf6b9e2 dangling blob 6cc27968aa8472dcd3b1e67ef255c60652a08244 dangling blob 8bfa1545f52cfaa5536c17d8ea9115000a97a444 dangling blob a3fc79cb6ebe3c0e992c126cb688c49ed638782a dangling blob c78b7ea32763743eb3da569aba4b57c33cee4d3d dangling blob b0ddf2d894b108ed02366553e99ab5d5ad037278 dangling blob 2753af6b5bb9d5de3bf911a11e01cedcbd52fe09 error: Could not read 01c05eb6aac12debda0f5faa126f176ec222c22e failed to parse commit 01c05eb6aac12debda0f5faa126f176ec222c22e from object database for commit-graph error: Could not read 03c5bf83d1ea08786754bafc1614d3277a2748ed failed to parse commit 03c5bf83d1ea08786754bafc1614d3277a2748ed from object database for commit-graph error: Could not read 043e3ec06c44ce770a023ceef61ff09cdf648176 failed to parse commit 043e3ec06c44ce770a023ceef61ff09cdf648176 from object database for commit-graph error: Could not read 04dddf24a19e02503281a27ad673213a3f7ec6b4 failed to parse commit 04dddf24a19e02503281a27ad673213a3f7ec6b4 from object database for commit-graph error: Could not read 05ad5b016930f9020c9ab7724309bf4b90ae3303 failed to parse commit 05ad5b016930f9020c9ab7724309bf4b90ae3303 from object database for commit-graph ... ... failed to parse commit fdd30f66c61acf5abce03ebcb55a2a0408827444 from object database for commit-graph error: Could not read ffbc10791a4f2b64aea853fccc5ce574af46b825 failed to parse commit ffbc10791a4f2b64aea853fccc5ce574af46b825 from object database for commit-graph error: Could not read ffc75ea1e663fcb28b0b4d68a3c88f6760af40f9 failed to parse commit ffc75ea1e663fcb28b0b4d68a3c88f6760af40f9 from object database for commit-graph Verifying commits in commit graph: 100% (235/235), done.
已尝试的排查操作:
- 执行
git fsck --unreachable | xargs git prune移除损坏对象 - 执行
git commit-graph write重建commit-graph - 执行
git fetch origin拉取远程变更 - 执行
git merge origin/main合并远程与本地分支 - 执行
git push --force origin main强制推送变更到远程仓库
以上操作均未解决问题,本地变更仍无法推送到远程仓库。
补充环境信息:
- 操作系统:Ubuntu 23.10
- Git版本:2.40.1
内容的提问来源于stack exchange,提问作者organicnz
相关产品推荐
相关产品推荐

