Подтвердить что ты не робот

Стратегия SVN с использованием веток и слияние изменений с соединительной линии на ветвь

Такой долговременный пользователь SVN, но довольно неопытный в ветвлении/тегировании, и когда я подозреваю, что я действительно не использую его правильно или в полном объеме.

У меня есть мой багажник, над которым я работаю над добавлением новых функций и т.д. Эта база кода используется на нескольких веб-сайтах, где мы создаем ветку от магистрали на основе каждого проекта.

Каждая ветвь обычно имеет модификации, специфичные для этого проекта, и все, что мы думаем, будет повторно использовано, добавляется в багажник и делает так, что функция может быть включена и выключена в различных проектах.

В настоящее время, когда мы вносим изменения в туловище и хотим, чтобы эти изменения были в заранее подготовленной ветке, я должен пройти и вручную объединить некоторые изменения в ветку и подтвердить их. Не идеально, и легко пропустить вещи.

Итак, мой вопрос... есть ли какой-либо способ обновить мою ветвь с помощью ВСЕХ изменений от соединительной линии и справиться с ними, как если бы это было стандартное обновление соединительной линии с конфликтами?

Я видел, как реинтегрировать ветвь в туловище, но из-за того, как я использую ветки в этом экземпляре, это не совсем то, что я хочу сделать.

4b9b3361

Ответ 1

Да, это возможно. В принципе, вам нужно запустить svn merge из чистой рабочей копии вашего ветки (без локальных изменений):

$ pwd
/home/user/mybranch
$ svn status # Does not display anything
$ svn update # Make sure your local copy is up to date.
Updating '.':
At revision X.
$ svn merge url/to/repository/trunk
Updates, additions, deletions and conflicts.
$ #handle conflicts.
$ svn commit -m "Merging changes from the trunk".

См. Сохранение синхронизации в ветке из книги SVN.

Первое слияние, вероятно, приведет к возникновению многих конфликтов, особенно если ветка давно разветвлена, но последние слияния будут проходить гладко, особенно если вы часто объединяетесь.