Слияние ветки с транком в SVN с использованием Eclipse - PullRequest
42 голосов
/ 31 августа 2010

Я с нетерпением жду объединения моих кодов, которые я разработал в ветке SVN, с транком. Я использую Eclipse, и я использовал Team-> Commit, чтобы зафиксировать свои обновления в SVN. Но я не делал слияния раньше. Пожалуйста, помогите мне с этим. Спасибо

Ответы [ 3 ]

80 голосов
/ 31 августа 2010
  1. Прежде всего, убедитесь, что вы в курсе. Обновите вашу рабочую копию целевой ветви, т.е. где вы сливаетесь. В этом примере мы работаем над стволом «ядра» и хотим получить изменения, произошедшие в ветви обслуживания, и объединить их.
  2. Разрешение любых конфликтов. На этом этапе не должно быть конфликтов между рабочей копией и хранилищем.
  3. Выберите вариант слияния SVN на рабочей копии. В Eclipse это будет найдено в меню «Команда» и называется «Merge Branch». SVN: объединение в Eclipse
  4. Измените URL-адрес From на конкретную ветку, которую вы хотите объединить с вашей рабочей копией. В этом примере мы ищем ветку обслуживания p400 (./core/branches/p400).
  5. Измените От ревизии до последней ревизии, которая была объединена с целевой веткой. По сути, вы не хотите продолжать слияние всей истории веток, вы просто хотите включить эти изменения с момента последнего слияния. В настоящее время в Subversion нет простого способа определить последнюю точку слияния. Вы должны просмотреть журнал сообщений и найти последний коммит, в котором говорится о слиянии. Если вы дисциплинированы в отношении сообщений фиксации, которые вы используете для слияния, это должно быть легко (см. Ниже). Запишите, что это за ревизия - она ​​понадобится вам позже, когда вы внесете изменения SVN: объединение с Eclipse
  6. Изменить версию до последней (т. Е. Заголовок). Запишите, что это за ревизия - она ​​понадобится вам позже, когда вы внесете изменения.
  7. Нажмите Объединить и подождите. В зависимости от того, насколько велики различия, это может быть быстрым, или «Затмение» может просто упасть. Если у вас есть такое огромное изменение, которое вы не можете сделать в Eclipse, вам может понадобиться уменьшить диапазон ревизий, которые вы собираетесь объединить. Или, возможно, вам даже придется пропустить определенные ревизии и сделать их вручную, если они массивные. У нас периодически возникала эта проблема при обновлении больших сторонних библиотек. В подавляющем большинстве случаев у вас все будет хорошо.
  8. Просмотр изменений и разрешение конфликтов. После завершения слияния просмотрите изменения, внесенные в вашу рабочую копию, и убедитесь, что вы устраняете любые обнаруженные конфликты.
  9. Как только все изменения будут разрешены в целевой рабочей копии, отметьте их с помощью одного коммита. Причина, по которой вы не выполняете много коммитов, заключается в том, что эти изменения должны были быть задокументированы в той ветке, из которой вы слились. Сообщение коммита должно быть в определенном формате, который детализирует слияние и его легко найти в будущем. Мы используем следующий формат, но вы можете использовать все, что вам подходит, если вы его придерживаетесь.

    Слияние [источника] с [целью]; [Хранилище]. Объединить оборот [начало]: [конец]

Наслаждайтесь!

0 голосов
/ 15 марта 2019

В затмении у нас есть возможность объединиться. Щелкните правой кнопкой мыши по проекту, вы увидите опцию «Команда» и, нажав на нее, вы увидите опцию слияния. Есть три разных варианта, которые вы можете увидеть в слиянии. * *enter image description here 1004

Чтобы успешно объединить изменения из ветви в транк, нам нужно переключить локальное рабочее пространство в транк (но перед этим убедитесь, что все изменения зафиксированы в ветке). Как только мы сделаем это, мы можем использовать параметр слияния и выбрать параметр «2 URL». Я добавил URL для транка как URL 1, а ветвь, которую я хотел объединить, как URL 2. Я мог видеть все входящие изменения, которые я выбрал "ОК". Все изменения теперь в моем локальном компьютере (на данный момент мое рабочее пространство связано со стволом). Затем я зафиксировал свои изменения в соединительной линии и, следовательно, слияние с ответвления в ствол прошло успешно.

0 голосов
/ 07 марта 2016

Я хотел бы добавить для пункта 8. Просмотр изменений и разрешение конфликтов. ---

При работе с конфликтами вручную - при копировании фрагментов кода справа налево - будьте осторожны Иногда фрагмент кода добавляется, иногда он правильно заменяет фрагмент. Убедитесь, что нет повторяющегося фрагмента кода.

Кроме того, это полезно-- Как правильно выполнить слияние Subversion в Eclipse?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...