Поскольку Git кумулятивен, как справиться с этим в долгосрочной перспективе, когда репо становится 5 ГБ? - PullRequest
4 голосов
/ 04 апреля 2011

Для Git, поскольку вся история существует, мне интересно, если я сохраню репо для хранения всего кода, который я написал, в течение 5 или 10 лет со всей историей ревизий, то репо станет 5 ГБ.

И если на машине нет репо, и я хочу просто попробовать фрагмент кода или небольшой проект Rails, мне нужно клонировать все 5 ГБ, и это не будет слишком практичным.

Скажем, если из 5 ГБ только 200 МБ являются текущими файлами, а все остальные являются историей, то, по крайней мере, если использовать SVN, то у каждой машины будет 200 МБ вместо 5 ГБ. Может быть, Git очень подходит для каждого отдельного маленького или среднего проекта, но что, если это «долгосрочное репо всей моей жизни», то как использовать Git для него?

Ответы [ 3 ]

6 голосов
/ 04 апреля 2011

Используйте несколько Git-репозиториев. Один сервер может обрабатывать любое количество репозиториев.

Если вы хотите испачкаться в репозитории, вы можете создать новую ветку, переписать ее историю (объединить несколько коммитов в одну) и удалить первую ветку.

5 голосов
/ 04 апреля 2011

Вы правы, сэр, и Git Wiki соглашается с вами .При этом, если вам не нужны изменения / выталкивания изменений из этого гипотетического git-репозитория, вы можете сделать «мелкий» клон, чтобы получить коммит без его истории:

git clone --depth X

Где X - это как далеко назад в историю вы хотите пойти.1 получит самый последний коммит, 2 получит самый последний и предыдущий, и так далее, и так далее, четвертый.

1 голос
/ 04 апреля 2011

Вы бы не использовали Git для этого, потому что это не то, для чего предназначен Git. ;)

Учитывая быстрое и простое создание репо (возможно, локального), нет особых оснований , а не иметь его для каждого проекта, и несколько причин от до ( возможность отслеживать их отдельно, сохранять репозитории небольшими и тематическими и т. д.).

Что касается данных по репозиториям объемом 5 ГБ, вы можете посмотреть эталонные тесты здесь и этого вопроса относительно ограничений Git.

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