SVN Merge экономит место на диске? - PullRequest
1 голос
/ 11 ноября 2009

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

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

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

Ответы [ 2 ]

4 голосов
/ 11 ноября 2009

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

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

0 голосов
/ 11 ноября 2009

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

...