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

Как обновить SVN 1.4.4 (r25188) до SVN 1.6

Как мы обновляем наш SVN с версии 1.4.4 до версии 1.6?

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

svnadmin upgrade

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

4b9b3361

Ответ 1

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

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

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

Вы можете получить более оптимизированную структуру репозитория, если вы выгрузите содержимое с помощью svnadmin dump, создайте новый пустой репозиторий, 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. Если вы получите ошибки в рабочей копии, это будет почему. Он не исчезнет, ​​пока вы не прекратите использование старых клиентов.

Как и все подрывные операции, необходим redbook.

Ответ 2

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

svn: Commit failed (подробности следуют): svn: Не удается открыть файл /db/txn -current-lock ': Permission denied

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

Ответ 3

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

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