Будет ли TortoiseSVN 1.7 корректно работать с репозиторием SVN 1.6?

#svn #version-control #tortoisesvn #backwards-compatibility #visualsvn-server

#svn #контроль версий #tortoisesvn #обратная совместимость #visualsvn-server

Вопрос:

Я хотел бы обновить мою установку TortoiseSVN до версии 1.7. У нас есть сервер VisualSVN, работающий с репозиторием SVN 1.6.

Нужно ли мне обновить репозиторий до 1.7, прежде чем я смогу обновить свой клиент, или TortoiseSVN обратно совместим?

Я знаю, что во время обновления с TortoiseSVN 1.6 до 1.7 мне нужно преобразовать мою рабочую копию в новый формат, но во время фиксации есть ли какая-то логика, чтобы увидеть версию сервера и соответствующим образом адаптироваться?

Ответ №1:

В примечаниях к выпуску

Старые клиенты и серверы прозрачно взаимодействуют с серверами и клиентами 1.7

Серверы Subversion 1.7 используют тот же формат репозитория, что и Subversion 1.6. Таким образом, можно легко обновлять и понижать версии между серверами 1.6.x и 1.7.x без изменения формата репозиториев на диске

Ничего не нужно делать, ваша рабочая копия будет обновлена и по-прежнему сможет взаимодействовать с сервером 1.6

Комментарии:

1. Примечание: TortoiseSVN обновит формат рабочей копии, что создаст проблемы для старых клиентов. Это проблема только в том случае, если у вас есть среда, в которой для доступа к одной и той же рабочей копии используются несколько разных клиентов. Например. если вы получаете доступ к рабочей копии из TortoisSVN и из IDE (например, PhpStorm), которая поддерживает только формат рабочей копии 1.6.

2. @ArtemGoutsoul вы можете использовать отдельный WC для клиентов на SVN 1.6

Ответ №2:

Да, будет.

Вы можете столкнуться с проблемами, если используете разные версии клиента в одной и той же рабочей копии (т. Е. Извлеченном каталоге). Кроме того, если вы используете старый клиент с новым сервером, вы не сможете использовать некоторые из новых функций сервера.

Однако новые клиенты SVN совместимы со старым сервером, за исключением некоторых новых функций. Таким образом, использование TortoiseSVN 1.7 с сервером 1.6 должно работать без проблем.

Смотрите матрицу совместимости на сайте SVN.

Комментарии:

1. к сожалению, матрица совместимости не работает с 1.7

Ответ №3:

Он отлично работает с сервером 1.6 (1.6.17 в моем случае).

Ответ №4:

Время для анекдотов:

  • Server Ver. 1.6.17
  • клиент Subversion 1.8.9 (win, tortoise)
  • клиент B версии 1.6.17 (r1128011) (linux)

на клиенте B:

  - create branch_x with lots of files
 - commit
 - svn mv branch_x branch_xnew
 - log shows A branch_xnew, then thousands of D for each file in branch_x
 - commit
 - fails saying that branch_x is out of date.

 - out of desperation, revert --depth inifity... same
 - more desperation, checkout a clean working copy, svn mv, commit, fails "branch_x is out of date".
  

на клиенте A: svn mv, фиксация, выполнено. svn на клиенте B не показывает конфликтов. все сделано.

Комментарии:

1. И как это отвечает на вопрос?

2. @crashmstr вопрос: «Является ли TortoiseSVN обратно совместимым?» … это дает хороший намек на то, что ответом на это является «YMMV»…