I want to migrate a gitlab repository that contains LFS files from gitlab server A to gitlab server B.
Here're the steps I've done:
- Click Settings -> General -> Export project in the repository at gitlab server A. Then download the exported file
repo.tar.gz
. - Create a new repository in server B using
repo.tar.gz
file.
The problem I have with the above steps is that I can't download the LFS files in server B.
When I click the download button of one of the LFS files, I get a 404 Page Not Found error.
Is this a bug of gitlab?
My gitlab version is 12.5.2.
I can successfully download the LFS files in server A.
If I use git clone https://...
to download the repository at server B, I get the following error:
Cloning into 'repo-at-server-b'...
remote: Enumerating objects: 248971, done.
remote: Counting objects: 100% (248971/248971), done.
remote: Compressing objects: 100% (163634/163634), done.
remote: Total 248971 (delta 61741), reused 248971 (delta 61741)
Receiving objects: 100% (248971/248971), 1.60 GiB | 42.92 MiB/s, done.
Resolving deltas: 100% (61741/61741), done.
Checking out files: 100% (226626/226626), done.
Downloading lfs_files/art.tar.xz (7.0 MB)
Error downloading object: lfs_files/art.tar.xz (b0d6758): Smudge error: Error downloading lfs_files/art.tar.xz (b0d67582c9a992b4f8a01fdde0f96999385435b98763251e64520e263e76ac0d): [b0d67582c9a992b4f8a01fdde0f96999385435b98763251e64520e263e76ac0d] Object does not exist on the server or you don't have permissions to access it: [404] Object does not exist on the server or you don't have permissions to access it
Errors logged to /data-disk/debug_git_lfs/repo-at-server-b/.git/lfs/logs/20210220T110106.03414397.log
Use `git lfs logs last` to view the log.
error: external filter 'git-lfs filter-process' failed
fatal: lfs_files/art.tar.xz: smudge filter lfs failed
warning: Clone succeeded, but checkout failed.
You can inspect what was checked out with 'git status'
and retry the checkout with 'git checkout -f HEAD'
It looks like that something went wrong when exporting the repository from server A, or when importing into server B.
I've tried the answer in this post, but fail at git lfs pull
command.
The error message I get from git lfs pull
is [c889004e16f35973ac3d695f7939e388060c425fd98d708e5076aefb67q15065] Object does not exist on the server or you don't have permissions to access it: [404] Object does not exist on the server or you don't have permissions to access it