Подтвердить что ты не робот

SVN больше не пишет .svn во всех подпапках?

Недавно я обновил свой SVN-клиент с 1,6,9 до 1,7 и после преобразования в новый формат, я заметил, что больше нет .svn в каждом подпапках. Для моей конкретной конфигурации это не очень удобно.

Есть ли способ отменить это или вернуться к старому поведению, когда каждая подпапка из CO будет иметь .svn?

4b9b3361

Ответ 1

Subversion 1.7 имеет полную переписывание системы управления метаданными рабочей копии Subversion, код под названием WC-NG. Старая система была одной из первых частей Subversion, написанных, и со временем стало трудно поддерживать и расширять. WC-NG призван обеспечить немедленное повышение производительности, а также позволяет много будущих улучшений функций.

Ключевой особенностью изменений, внесенных в Subversion 1.7, является централизация хранилища метаданных рабочей копии в одном месте. Вместо каталога .svn в каждом каталоге рабочей копии рабочие копии Subversion 1.7 имеют только один .svn-каталог - в корне рабочей копии. Этот каталог включает (помимо прочего) базу данных с поддержкой SQLite, которая содержит все потребности Subversion для метаданных для этой рабочей копии.

Несмотря на то, что данные хранятся в структурированном формате, отношения между данными являются сложными. Мы крайне не рекомендуем внешним инструментам модифицировать данные, хранящиеся в этой базе данных, поскольку такая модификация может привести к повреждению рабочей копии.

Подробнее здесь.

Ответ 2

Самый простой способ получить subversion для записи каталогов .svn в каждом каталоге - это понизить вашу подрывную деятельность до версии до серии 1.7. Subversion 1.6.23 была последней версией, которой нужно иметь поведение.

Другой способ добиться этого, который будет работать с Subversion 1.7 и более поздними версиями, - это индивидуально проверить каждый подкаталог вашего проекта. Например, если у вас есть проект со структурой каталогов, например:

project
`- bin
`- etc

Вы можете проверить это, сделав что-то вроде:

mkdir project
cd project
svn co svn+ssh://[email protected]/src/project/bin
svn co svn+ssh://[email protected]/src/project/etc

Это допустимо только в том случае, если у вас мало каталогов, а их организация неглубока.

В противном случае лучшим вариантом будет понижение до более старой подрывной деятельности.