Не удалось клонировать репозиторий с помощью git lfs

В моем репо используется git lfs. Для свежего клона я запустил:

git lfs install
git clone https://example.com/repo.git

Клон доходит до того, что начинает загружать файлы lfs, доходит до какого-то файла и затем терпит неудачу. Файл, в котором он терпит неудачу, различен каждый раз, когда я пытаюсь клонировать. Очень редко это удается.

Вот результат:

Cloning into 'repo'...
remote: Counting objects: 35699, done.
remote: Compressing objects: 100% (17678/17678), done.
remote: Total 35699 (delta 15603), reused 35553 (delta 15545)
Receiving objects: 100% (35699/35699), 231.45 MiB | 11.12 MiB/s, done.
Resolving deltas: 100% (15603/15603), done.
Downloading big_file.big (157.39 KB)
...
Downloading some_other_big_file.big (18.84 KB)
Error downloading object: some_other_big_file.big

Errors logged to blah.log
Use `git lfs logs last` to view the log.
error: external filter 'git-lfs filter-process' failed
fatal: some_other_big_file.big: 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'

В логах lfs написано:

Error downloading object: some_other_big_file.big

Smudge error: Error buffering media file: cannot write data to tempfile "blah.tmp": LFS: unexpected EOF:
github.com/git-lfs/git-lfs/errors.newWrappedError
        C:/Go/src/github.com/git-lfs/git-lfs/errors/types.go:166
github.com/git-lfs/git-lfs/errors.NewSmudgeError
        C:/Go/src/github.com/git-lfs/git-lfs/errors/types.go:252
github.com/git-lfs/git-lfs/lfs.PointerSmudge
        C:/Go/src/github.com/git-lfs/git-lfs/lfs/pointer_smudge.go:70
github.com/git-lfs/git-lfs/lfs.(*Pointer).Smudge
        C:/Go/src/github.com/git-lfs/git-lfs/lfs/pointer.go:65
github.com/git-lfs/git-lfs/commands.smudge
        C:/Go/src/github.com/git-lfs/git-lfs/commands/command_smudge.go:84
github.com/git-lfs/git-lfs/commands.filterCommand
        C:/Go/src/github.com/git-lfs/git-lfs/commands/command_filter_process.go:65
github.com/git-lfs/git-lfs/vendor/github.com/spf13/cobra.(*Command).execute
        C:/Go/src/github.com/git-lfs/git-lfs/vendor/github.com/spf13/cobra/command.go:477
github.com/git-lfs/git-lfs/vendor/github.com/spf13/cobra.(*Command).Execute
        C:/Go/src/github.com/git-lfs/git-lfs/vendor/github.com/spf13/cobra/command.go:551
github.com/git-lfs/git-lfs/commands.Run
        C:/Go/src/github.com/git-lfs/git-lfs/commands/run.go:66
main.main
        C:/Go/src/github.com/git-lfs/git-lfs/git-lfs.go:33
runtime.main
        C:/Go/src/runtime/proc.go:183
runtime.goexit
        C:/Go/src/runtime/asm_amd64.s:2086

Если я попробую git lfs pull в этот момент, все будет работать нормально.

Есть идеи, что может быть причиной сбоя при загрузке файлов lfs?


person UtterlyConfused    schedule 18.01.2017    source источник
comment
У меня такая же проблема. Где размещено ваше репо? Мой на VSTS.   -  person quinmars    schedule 19.01.2017


Ответы (2)


У меня была похожая проблема, и была сообщение об ошибке с git lfs . Пока ошибка решалась, мне помог этот обходной путь, когда вы пропускаете фильтр там, где он не работает.

// Skip smudge - We'll download binary files later in a faster batch
git lfs install --skip-smudge

// Do git clone here
git clone ...

// Fetch all the binary files in the new clone
git lfs pull

// Reinstate smudge
git lfs install --force

Кредиты: @strich

person avp    schedule 09.10.2017
comment
Это позволяет мне загружать файлы LFS в виде ссылок, но без фактического содержимого. При выполнении git lfs pull я получаю ошибку с ошибкой lfs smudge filter. - person Kiteloopdesign; 15.05.2021

Попробуйте сделать git lfs pull из GitBash.

Похоже, что в командной строке не отображается всплывающее окно с ключом доступа, которое необходимо для работы git lfs.

person Vijay    schedule 11.05.2021