SVN Merge экономит место на диске?

Книга SVN описывает делимитацию как "каждый раз, когда новая версия файла фиксируется в репозитории, Subversion кодирует предыдущую версию (фактически, несколько предыдущих версий) как дельту против новой версии".

В этой статье на блоге collab.net говорится, что "В BDB (база данных Беркли) полные тексты находятся в кончиках каждой отдельной строки истории файла". в то время как "FSFS хранит дельты в обратном направлении, так что старые версии никогда не нужно переписывать".

Если это так, будет ли SVN (используя BDB) хранить полную копию файла в HEAD каждой ветви, а затем исключать одну копию файла, если ветви объединены?

2 ответа

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

Это также должно применяться при объединении из другой ветви. Добавляются новые файлы, измененные файлы объединяются - сохраняются дельты и т. Д.

Нет, потому что старая версия все еще существует. Другими словами, чтобы вернуться к предыдущей не объединенной версии, необходимо сохранить ее.

Другие вопросы по тегам