SVN: отделение и реинтеграция не работает с обновленным сервером
Я работаю с сервером Subversion, который был недавно обновлен до версии 1.7. Я использую клиент Linux командной строки 1.7.10.
Я создал ветку, как это:
%: svn copy svn+ssh://acme.com/a/b/c/trunk svn+ssh://acme.com/a/b/c/branches/ovm_sequencer -m "Feature branch for ovm_sequencer"
После нескольких правок я попытался реинтегрировать в багажник и столкнулся только с проблемами:
%: svn merge --reintegrate '^/c/branches/ovm_sequencer'
svn: E160013: File not found: revision 1677, path '/c/branches/ovm_sequencer'
%: svn merge --reintegrate svn+ssh://acme.com/a/b/c/branches/ovm_sequencer
svn: E200007: Retrieval of mergeinfo unsupported by 'svn+ssh://acme.com/a/b/c/branches/ovm_sequencer'
Что пошло не так и как это можно исправить?
3 ответа
Две заметки:
^
в SVN-path означает всегда repository-root, таким образом^/c/branches/ovm_sequencer
подразумевает "/c/branch /ovm_sequencer" внутри репозитория, в то время как у вас есть (наиболее вероятно) репозиторий вacme.com/a/b/c
путь и URL должны быть^/branches/ovm_sequencer
"Получение неподдерживаемой информации mergeinfo" означает один плохой факт о вашей сети | Администратор SVN - он не читает Примечания к выпуску для обновленного программного обеспечения: для поддержки mergeinfo на стороне сервера, за исключением обновления программного обеспечения для Pre-1.5 Subversion до версии 1.5 или более поздней, репозиторий также должен быть обновлен, чтобы иметь новый формат. Тема (очень старая - с 2008 года) на Collabnet "mergeinfo не поддерживается"
Если вы используете IntelliJ 13.1 (сборка № IU-135.475) и у вас возникла эта проблема, а ваш сервер не является 1.7x, просто перейдите на вкладку "Настройки" Subversion, откройте вкладку и снимите флажок "Показывать источник слияния в истории и аннотациях".
Обновите удаленный репозиторий, а не персональную проверку (займет несколько секунд):
$ svnadmin upgrade REPOS_PATH
Если вы беспокоитесь или у вас нет удаленного доступа для конвертации - создайте дамп или синхронизируйте копию репозитория:
$ svnsync initialize --username=XXX --password=YYY $MIRROR $MASTER
$ svnsync synchronize $MASTER
или же:
$ svnadmin dump $MASTER > svn.dump