Уменьшение размера.папки в SVN
в нашем проекте мы приняли решение сократить время сборки с помощью встроенных программ. Еженедельно / ежемесячно мы создаем стабильный релиз и фиксируем его в репозитории. Сборка использует эти двоичные файлы вместо того, чтобы строить все из источника.
для скорости сборки это фантастика. Но, неудивительно, что он действительно увеличивает размер проверки SVN. Наш багажник в настоящее время находится на ~22 ГБ. Я понимаю, что это не предполагаемое использование Subversion. Но у нас нет альтернативы в момент.
но я хотел бы улучшить нынешнюю ситуацию. Элемент .svn
папка вносит большой вклад в размер Транка на диске. Когда двоичные файлы обновляются, кажется, что они содержат несколько баз .папка svn. То есть, если двоичный файл равен 4 ГБ, то в.svn
. Если он обновлен, то .svn
папка содержит исходную базу плюс новую базу и объем до 8 ГБ для этого одного файла.
можно ли сказать Subversion не держать базу в .svn
папка для определенных файлов? Через google я нашел аналогичный вопрос,Как уменьшить .размер папки svn?.
ответ, который получил Саймон, был
- используйте частичную проверку (которая не будет работать для меня, поскольку мне нужны двоичные файлы)
- это еще не особенность Subversion
- это обсуждалось, но не будет особенностью, пока по крайней мере Subversion 1.8
к счастью для меня subversion 1.8 была выпущена. Была ли добавлена эта функция?
Я не заметил его в Примечания. Хотя" сокращение хранилища каталогов и свойств " выглядит многообещающе.
2 ответа:
там нет никакого способа, чтобы избавиться от необходимости хранить Приштины в этот момент. Об этом говорили, но на самом деле это не простая проблема, потому что есть так много разных ситуаций использования, которые будут представлены путем их удаления по желанию.
С 1.7 первозданное хранилище было изменено и в некоторых случаях вы можете фактически видеть ситуацию хуже, чем до 1.7. Приштины теперь хранятся в файлах, названных хэшем первозданного. Так что если вы у вас есть несколько одинаковых файлов, в которых вы не будете хранить дубликаты pristines. Однако мы также больше не убираем Приштины. Так что они просто продолжают строить. Вы можете вызвать неиспользуемые Приштины, которые будут удалены с помощью
svn cleanup
.есть смысл сохранить неиспользуемые Приштины вокруг, если вы переключаетесь между ветвями, нам больше не нужно загружать вещи, которые у вас уже есть в 1.8.
для тех, кто использует команду очистки клиента TortoiseSVN, а не ,
.svn
размер папки можно уменьшить, убедившись, что вакуумные первозданные копии проверил:кроме того, рекомендуется очистка на верхнем уровне рабочей копии, как указано здесь.
[Edit]
по данным ответ и SVN изменения в журнале,
svn cleanup
есть возможность вакуумировать первозданные копии (/vacuum
). Это делается по умолчанию, начиная с 1.8.