git клон огромного хранилища - PullRequest
0 голосов
/ 14 января 2020

У меня относительно большой git репозиторий на Team Foundation Server - почти 3 ГБ из-за - но через некоторое время сервер сбрасывает соединение около 1 ГБ - слишком низкая скорость загрузки со 120-100 кбит / с

Я пытался клонировать его, используя downloading via zip, а затем добавить пульт и сделать pull. Но он считает все файлы новыми.

Как клонировать такой репозиторий?

Ps Я знаю, что он не должен быть таким большим, и файлы там вообще не должны храниться в git репо, но у меня нет возможности переместить их.

1 Ответ

1 голос
/ 14 января 2020

Если вы можете обновить до Git 2.25, вы можете использовать новую команду sparse-checkout , чтобы получить только часть репо. Вы можете быть в состоянии получить достаточно данных с помощью одного разреженного извлечения, чтобы затем можно было извлечь оставшиеся данные без сбоев.

Разреженная проверка - это не что иное, как список шаблонов путей к файлам, которые Git должны пытаться заполнить в вашей рабочей копии при проверке содержимого вашего хранилища. По сути, он работает как .gitignore, за исключением того, что действует на содержимое вашей рабочей копии, а не на ваш индекс.

[...]

Идея, лежащая в основе git Команда sparse-checkout проста: позволяет пользователям играть с частичными клонами и sparse-checkouts как можно проще. Он может выполнять четыре действия: установить список путей для извлечения, распечатать текущий список и полностью включить или отключить разреженные извлечения.

Подробнее об этом сообщении в блоге от Github


Если редкая проверка не является опцией, вы можете удалить некоторые файлы большего размера из истории хранилища целиком . Если вы можете сделать это с помощью пульта дистанционного управления, вы можете уменьшить размер загружаемого файла настолько, чтобы получить весь пакет за один clone.

.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...