I have a Git repo on Azure DevOps that is nothing but third party code. Header files and binaries. But twice today I have tried a clean pull from Azure using Tortoise Git. But when the pull finishes, I get an error that says one of the packed files in the repo is corrupt. Yet even after following the suggestions I am stuck and I do not know how to proceed.
Here is the full text of the error I see in Tortoise Git when doing the clone
git.exe clone --progress -v -- "https://[email protected]/mycompany/Software/_git/SdkThirdParty" "C:UsersjoesourcereposSdkThirdParty"
Cloning into 'C:UsersjoesourcereposSdkThirdParty'...
POST git-upload-pack (gzip 55264 to 27730 bytes)
remote: Azure Repos
remote: Found 15861 objects to send. (91 ms)
Receiving objects: 100% (15861/15861), 3.92 GiB | 8.81 MiB/s, done.
Resolving deltas: 100% (6988/6988), done.
error: inflate: data stream error (invalid code lengths set)
fatal: packed object 9c4be69232392eff1184082528a78564ca432605 (stored in C:/Users/joe/source/repos/SdkThirdParty/.git/objects/pack/pack-d1cef48443304ae7ba2fa27b0b4992c1ea61ca05.pack) is corrupt
warning: Clone succeeded, but checkout failed.
You can inspect what was checked out with 'git status'
and retry with 'git restore --source=HEAD :/'
So I followed their suggestions using the command line. First I tried issuing git status
. It scrolled through a bunch of information messages about deleted files, things I long ago deleted from the repo so this looked good. At the end it dumped this.
Untracked files:
(use "git add <file>..." to include in what will be committed)
OpenCV/
README.md
arrayfire/
Next I tried following the suggestion to do git restore --source=HEAD :/
and I got this
C:UsersjoesourcereposSdkThirdParty>git checkout master
error: inflate: data stream error (invalid code lengths set)
fatal: packed object 9c4be69232392eff1184082528a78564ca432605 (stored in .git/objects/pack/pack-d1cef48443304ae7ba2fa27b0b4992c1ea61ca05.pack) is corrupt
So yes, that file is corrupt. Is there any way to… decorrupt it? Should I try to add the untracked files and then proceed?
Not sure where to go from here.