Я столкнулся со специфической проблемой с SVN merge
. Я хочу слить из ветки разработчика в транк. У нас есть несколько веток разработки, которые одновременно отсекают ствол.
Я объединяю одну из этих веток в магистраль с помощью этой команды:
svn merge trunk branch_1
Я вижу, что изменения, которые не являются частью этой ветки, объединяются в ствол. Что я делаю не так ?
Версия SVN:
Клиент командной строки Subversion, версия 1.6.16-SlikSvn-tag-1.6.16@1076804-WIN32.
svn
version-control
merge
Ванчинатан Чандрасекаран
источник
источник
Ответы:
Ваш
svn merge
синтаксис неверен.Вы хотите получить рабочую копию,
trunk
а затем использоватьsvn merge --reintegrate
опцию:См. Главу книги SVN о слиянии для более подробной информации.
Обратите внимание, что в то время, когда это было написано, это был правильный ответ (и он был принят), но дела пошли дальше. См. Ответ topek и http://subversion.apache.org/docs/release-notes/1.8.html#auto-reintegrate
источник
--reintegrate
действительно не является обязательным, но действительно рекомендуется в этом случае. Я попытался обойтись без него--reintegrate
и закончил сотней конфликтов. С--reintegrate
, никаких конфликтов и все было хорошо!--reintegrate
Вариант является простым и эффективным, но это не должно быть отмечено , что «После--reintegrate
слияния осуществляются с ветки на ствол, ветви больше не может использоваться для дальнейшей работы. Это не в состоянии правильно усваивать новые изменения из ствола, и не может быть правильно реинтегрирован снова в багажник ". как объясняется в книге, которую вы связали.Если ваш рабочий каталог указывает на магистраль, вы сможете объединить свою ветку с:
обязательно выполните эту команду в корневом каталоге вашего ствола
источник
Сделайте обновление svn в транке, обратите внимание на номер ревизии.
Из багажника:
Вы можете проверить, где ветка была отрезана от ствола, выполнив журнал svn
источник
svn
(например, с той, которую использует OP).svn://path/to/branch/branchName
должно извлекать только изменения из этой ветки, а не из других веток. Если так, то мы в опасности!Синтаксис неправильный, вместо этого он должен быть
источник