Модель хранения git расточительна? - PullRequest
21 голосов
/ 06 сентября 2011

Я читал о , как git хранит здесь изменения .

Похоже, если я изменю одну строку в файле, он будет заново сохранять весь файл.Тратит ли это много места по сравнению, скажем, с Subversion, которая хранит только различия?

(Или я неправильно понимаю модель хранилища?)

Ответы [ 3 ]

22 голосов
/ 06 сентября 2011

Git в конечном итоге упакует все в сжатые дельта-архивы в ходе обычного внутреннего обслуживания, после чего это больше не проблема.

Хотя сегодня это не проблема. Философия Git заключается в том, что дисковое пространство дешевое, и его лучше оптимизировать по скорости, а не по эффективности хранения. Скорее всего, вам будет лучше обслуживать SCM, который в два раза быстрее, чем тот, который требует половину дискового пространства.

См. Главу Git Book по Packfile , а также git repack и git-pack-objects .

3 голосов
/ 06 сентября 2011

Git сжимает хранимые файлы с помощью zlib и упаковывает их для более эффективного хранилища .

2 голосов
/ 06 сентября 2011

На самом деле нет.Есть хорошая статья, описывающая преимущество git: http://web.archive.org/web/20110902055701/http://whygitisbetterthanx.com:80/

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