путь svn не найден в ветви, не участвующей в операции объединения - PullRequest
10 голосов
/ 03 ноября 2010

Я пытаюсь объединить один файл из моего ствола в ветвь (wc) и получаю ошибку нечетного пути не найден для пути, который, как представляется, находится на ветке, не участвующей в текущей операции слияния.

Например, в нашем проекте SVN у нас есть:

  • ветви
    • branch0
    • branch1
    • branch2
    • branch3
    • branch4
  • теги
    • ... [некоторые теги]
  • ствол

Я проверил branch4, и это моя рабочая копия.После исправления производственной ошибки в транке, я хочу объединить свое изменение из транка в branch4.Я пытаюсь сделать это, используя следующую команду:

svn merge https://svn.svnprovider.com/my-account/my-project/trunk/path/to/file/my-file.java path/to/file/my-file.java

Я сделал это с другими файлами без проблем, однако, для этого файла я получаю ошибку, похожую на: (Информация о собственном в реальных файлах и пути,отсюда и пример)

svn: '/my-account/!svn/bc/1732/my-project/branches/branch1/path/to/file/my-file.java'путь не найден

В какой-то момент в истории branch1 была нашей рабочей веткой, и она была повторно интегрирована в транк.Все ветви, насколько мне известно, были созданы из ствола, а не из других ветвей.Итак, мне интересно, во-первых, что происходит, а во-вторых, как мне это исправить.

Я прочитал несколько постов, в которых рассказывается о svn: mergeinfo и о том, как это может вызвать подобные проблемы, и что это было особенно проблематично, когда пользователи использовалиtortise.У нас было несколько пользователей, подвергшихся пыткам, которые приходили и уходили в проект, так что это может быть основной причиной проблемы - все же нужно исправить ее.

Кто-нибудь сталкивался с подобной проблемой и определил основную причину иисправить.Большая благодарность.

Ответы [ 2 ]

7 голосов
/ 05 ноября 2010

Попробуйте использовать параметр - ignore-ancestry при выполнении слияния.Это может быть история слияния неполная (возможно, из-за черепахи или любого другого клиента по этому факту), и что-то, что было сделано на branch1, пытается примениться к рабочей копии, когда вы делаете «нормальное» слияние.

3 голосов
/ 27 декабря 2011

Я столкнулся с подобной проблемой.Как и в случае с преподобным, мой файл когда-то находился в другой ветке, слился обратно в ствол и снова разветвился.

Хотя причина ошибки для меня не прослеживается.

Что мне помогло, так это использование параметра -c и объединение только изменений из ревизии, которая меня интересовала.

svn merge -c 12345 https://svn.svnprovider.com/my-account/my-project/trunk/path/to/file/my-file.java path/to/file/my-file.java
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...