Разница между конечной точкой git-lfs env и LfsStorageDir? - PullRequest
0 голосов
/ 10 марта 2019

Мне кажется, я понимаю механизм lfs и его метод отслеживания бинарных файлов с помощью указателей и только клонирования данных по мере необходимости, но я не могу получить надежное подтверждение того, что lfs хранит объемные данные.В моем случае я подозреваю, что lfs хранит данные локально, потому что мой репозиторий github крошечный (175 КБ!) Относительно проекта (Source + Config: 72 КБ, Content: 140,7 МБ), а локальный каталог .git намного больше (1,2 ГБ),

Когда я запускаю git lfs env, я получаю следующее (исключая большую часть отчета, показывая, что кажется связанным):

Endpoint (s05_testinggrounds_remote)=https://github.com/rebusb/S05_TestingGrounds.git/info/lfs (auth=basic)
...
LocalMediaDir=D:\Unreal Projects\Udemy C++ S05\TestingGRounds\..git\lfs\objects
...
LfsStorageDir=D:\Unreal Proejcts\Udemy C++ S05\TestingGrounds\.git\lfs
...

Моя интуиция говорит, что файлы локальные,Размер из github правильный, и не беспокойтесь, но это противоречит тому, что я прочитал о github lfs здесь, и файлах git-lfs здесь .Все, что я прочитал, говорит, что хранит их на одноранговом или другом сервере, но как определить местоположение этого сервера?Я прочитал, что конечная точка, указанная в команде env, должна быть местоположением, но тогда указанный размер на github неверен.

Может кто-нибудь выяснить разницу между конечной точкой и LfsStorageDir или объяснить, как найти фактический сервер / местоположение данных lfs?

1 Ответ

1 голос
/ 10 марта 2019

Git LFS по умолчанию будет загружать только те данные, которые вам нужны для проверки коммита.Когда он загружает данные, он загружает их из местоположения, которое вы видите в Endpoint, в подкаталог LfsStorageDir.Новые созданные вами объекты также сохраняются в том же подкаталоге LfsStorageDir, пока вы не нажмете на них.

По умолчанию используется пульт дистанционного управления origin, который помечен как Endpoint=;другие удаленные значения используются, только если вы укажете git lfs fetch <remote>.Когда вы нажимаете на пульт, зацепки предварительного толкания выталкивают соответствующие данные LFS на этот пульт, используя местоположение Endpoint для этого пульта.Если вы хотите передать все данные LFS, вы можете использовать git lfs push --all <remote>.

Многие хостинг-провайдеры (например, GitHub) предоставляют отдельную большую область хранения файлов для ваших данных, которая доступна с помощью стандартного клиента Git LFS.Невозможно увидеть файлы непосредственно на сервере, поскольку они доступны только через веб-интерфейс или через клиент LFS.

...