Дублирование репозитория git и его настроек GIT-LFS
Я продублировал репо в более новый репозиторий, но при выполнении git-клона в новом репо он не может загрузить файлы с помощью указателей LFS, и я получаю сообщение об ошибке при использовании smudge... например.. "Ошибка загрузки объекта. Объект не найден на сервере "
шаги:
git clone --bare https://github.com/myuser/old-repo.git
cd old-repository.git
git push --mirror https://github.com/myuser/new-repo.git
git clone https://github.com/myuser/new-repo.git
[error.....git-lfs.exe smudge --- somefile.....Error downloading object]
Ветви и истории коммитов выглядят хорошо, но LFS не может загрузить необходимые файлы. Есть ли другой способ при использовании git-lfs?
3 ответа
Я обнаружил эту ссылку: mirroring-a-repository-that-содержит-git-large-file-storage-objects
Похоже, точно ответить на ваш вопрос. Важная часть, которую вы пропустили, git lfs push/pull
:
git clone --bare https://hostname/exampleuser/old-repository.git
cd old-repository.git
git lfs fetch --all
git push --mirror https://hostname/exampleuser/new-repository.git
git lfs push --all https://github.com/exampleuser/new-repository.git
Хуки и дополнения и тому подобное являются локальными конфигурациями репозитория, если ваша настройка git-lfs сложно сделать во второй раз, зафиксируйте скрипт репозитория, чтобы сделать это, и запустите его при первой проверке.
Вы также можете клонировать, используя протокол git, активы LFS будут по-прежнему извлекаться через http, что может привести к запросам пароля в зависимости от вашего сервера LFS, поскольку предварительный общий ключ sshs не будет использоваться для аутентификации на ресурсах LFS.
git clone git@github.com:username/my_lfs_repo.git destination_dir