Проблемы ветвления SVN - PullRequest
       27

Проблемы ветвления SVN

1 голос
/ 18 августа 2011

У меня есть / Trunk в моем проекте X. На 69-й версии нам пришлось отменить изменения в трех предыдущих версиях (61, 63, 64).

То, что я сделал, было обратным слиянием с ревизиями 61, 63, 64 и передало это на 69-ю версию. Тогда мы могли бы развернуть снова, и все были счастливы.

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

Итак, теперь я сделал "/ Branches / X" (rev 70) из ревизии HEAD в / Trunk (которая является 69-й), но я хочу иметь при себе изменения, которые я отменил в / Trunk ( 61,63,64)

Как правильно это сделать?

Кстати, я прояснил себя? :)

Ответы [ 3 ]

2 голосов
/ 18 августа 2011

Прежде всего, следите за проверкой орфографии: trunk и branches обычно все строчные. Тем не менее, вы должны удалить свою ветку и воссоздать ее из ревизии 68.

svn delete <project_url>/branches/X -m"branch X removed"

svn copy <project_url>/trunk@68 project_url/branches/X -m"New branch X"

Здесь я предполагаю, что ревизия 68 содержит все изменения от оборотов. 61,63,64 и ничего тебе не нужно.

Я уверен, что вы уже поняли, что без книги Subversion .

вы не сможете далеко уйти.
1 голос
/ 18 августа 2011

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

  1. Получить Y в рабочей папке Y-WF.
  2. Перейти к Y-WF.
  3. Щелкните правой кнопкой мыши и выберите объединить.
  4. В качестве исходного URL-адреса введите URL-адрес ветви X.
  5. Выберите наборы изменений, которые вы хотите объединить.
  6. Нажмите ОК.
  7. Теперь изменения были применены к вашей рабочей папке. (в случае отсутствия конфликтов)
  8. Регистрация всех ваших изменений.
1 голос
/ 18 августа 2011

Вы можете просто объединить их снова, теперь в ветку:

svn merge -r60:64 url://trunk wc-branch
...