git оформить получение ASCII-файла вместо двоичного - PullRequest
2 голосов
/ 11 февраля 2020

Устанавливает Ubuntu 18.04 на fre sh P C и двоичный файл клонируется в виде текстового файла.

Команда Run для старых и новых блоков:

$ git checkout -f a8afd894150cc31cde43dbeb422183640b64dcab
HEAD is now at a8afd8941 did some stuff.

старый P C:

file composer.phar
composer.phar: data

новый P C:

$ file composer.phar
composer.phar: ASCII text

Увидев, что это не удалось, я установил / включил git lfs:

$ apt-get install git-lfs 
$ git lfs install
Updated git hooks.
Git LFS initialized.

И /root/.gitconfig, и /var/lib/jenkins/.gitconfig выглядят одинаково на старых и новых ПК.

Есть идеи, что случилось?

1 Ответ

0 голосов
/ 12 февраля 2020

Файлы, которые у вас есть на диске, называются файлами-указателями LFS, и именно таким образом Git LFS отслеживает данные. Если при оформлении заказа Git LFS не был установлен или вы еще не запускали git lfs install, то Git не вызвал бы Git LFS для проверки действительно больших файлов, и это оставили файлы указателей в дереве.

Самый простой способ восстановиться после этого - запустить git lfs pull, который загрузит и проверит все файлы в вашем рабочем дереве. Поскольку вы запустили git lfs install, Git должен вызвать Git LFS при следующем переключении веток, и все должно произойти автоматически.

Для справки, записи, которые вы ищете в * Это 1008 * файлов:

$ git config -l | grep filter.lfs
filter.lfs.clean=git-lfs clean -- %f
filter.lfs.process=git-lfs filter-process
filter.lfs.smudge=git-lfs smudge -- %f

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

...