Переместить хранилище Subversion без истории
Есть много сообщений о перемещении истории Subversion с историей версий, но я хочу сделать что-то другое.
По сути, у нас есть хранилище, которое использовалось в качестве доказательства концепции, и мы хотим заархивировать его. Однако мы хотим создать новый репозиторий с последней версией некоторого кода, но с сохраненной историей автора, но это новый старт, поэтому мы не заинтересованы в сохранении истории версий. Кроме того, мы пытаемся уменьшить размер хранилища, поскольку в прошлом были сохранены двоичные файлы, из-за чего хранилище было слишком большим.
Я также в то же время хочу удалить некоторые папки, которые, я думаю, я могу использовать фильтр дампа?
Поскольку я хочу, чтобы информация о пользователях проверялась и возвращалась на новое место, это не было бы предпочтительным вариантом.
2 ответа
Чтобы иметь самую последнюю версию файлов с их автором, датой принятия и сообщением о фиксации, вам нужно будет использовать svnadmin dump, чтобы создать файл дампа из вашего хранилища, и svndumpfilter, чтобы отфильтровать ревизии, которые вы не хотите сохранять.
Работа с svndumpfilter, как правило, очень неприятное занятие, и вам может потребоваться использовать производные (и часто плохо обслуживаемые) программы, такие как svnfiltereddump, svndumpsanitizer, svndumpfilter2 или svndumpfilter3.
В конце концов, вы должны задать себе вопрос, действительно ли затраченные на очистку истории усилия стоят того.
Вы можете просто сделать svn export
из проектов, которые вы хотите продолжать иметь и делать в новом хранилище svn import
, Перед импортом просто удалите файлы, которые вы не хотите импортировать.