Как обновить SVN 1.4.4 (r25188) до SVN 1.6 - PullRequest
20 голосов
/ 21 июля 2009

Как нам обновить наш SVN с версии 1.4.4 до версии 1.6?

Я думал, что мы могли бы использовать следующую командную строку, но она не существует в нашей версии:

svnadmin upgrade

SVN работает в среде Windows Server. Мы работаем с версией сервера SVN: svnadmin, версия 1.4.4 (r25188), скомпилированная 2007-06-08T18: 49: 42.

Ответы [ 3 ]

32 голосов
/ 21 июля 2009

Какой сервер вы используете? Если вы используете apache (http://) или svnserve (svn: //), просто замените все двоичные файлы svn на версии 1.6.3 двоичных файлов (knee jerk nag - сначала сделайте резервную копию своего хранилища, сохраняйте старые двоичные файлы) Не забудьте обновить модули apache, если вы используете apache.

Если вы не используете сервер, но работаете с файлами напрямую (c: \), просто обновите свои клиенты до версии 1.6.3.

На этом этапе ваш новый сервер 1.6 обслуживает хранилище 1.4. Чтобы обновить структуру хранилища и получить полный доступ к новым функциям, используйте команду обновления svnadmin, входящую в состав двоичных файлов 1.6. Запустите эту команду на компьютере, который имеет доступ к физическим файлам хранилища и укажите физическое местоположение корневого хранилища (c: \ myrepository).

Вы можете получить более оптимизированную структуру репозитория, если вы выгружаете содержимое с помощью дампа svnadmin, создаете новый пустой репозиторий, svnadmin загружает старый дамп. Прочтите примечания к выпуску 1.5 & 1.6 и вывод "svnadmin help upgrade", чтобы узнать, почему.

Ваши клиенты могут обновиться отдельно, когда они будут готовы. Служба 1.6 может взаимодействовать с клиентом 1.4, 1.5 или 1.6, а клиент 1.6 может общаться с сервером 1.4, поэтому не имеет значения, если вы сначала обновите клиенты.

В отличие от хранилища, рабочие копии на ваших машинах обновляются, как только их видит новый клиент. Это означает, что у вас будут проблемы с смешиванием клиентов разных версий на одном компьютере, например, если вы используете tortoisesvn и ankh svn - вам нужно будет одновременно обновить оба клиента до версии 1.6. Если вы получаете ошибки версии рабочей копии, это будет причиной. Он не исчезнет, ​​пока вы не прекратите использовать старых клиентов.

Как и во всех подрывных действиях, красная книга необходима.

2 голосов
/ 04 августа 2009

Мы следовали рекомендациям Джима Т, и это сработало хорошо. У нас была только одна проблема с коммитом:

svn: коммит не выполнен (подробности следуют): svn: не удается открыть файл / db / txn-current-lock ': разрешение запрещено

Мы решили, изменив права доступа к файлам в папке db.

0 голосов
/ 21 июля 2009

Команда svnadmin является частью пакета сервера SVN. Убедитесь, что вы используете серверную версию пакета (вам не нужно запускать svnadmin на локальном клиенте / рабочей копии).

Если вы установили пакетную / упакованную версию, убедитесь, что это полная версия.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...