Передача в новую ветку Subversion - PullRequest
1 голос
/ 26 июля 2011

Это, вероятно, глупый вопрос, но я не делал этого раньше в Svn.

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

Какая здесь правильная процедура?Спасибо

Ответы [ 3 ]

5 голосов
/ 26 июля 2011

Найти ревизию вашей рабочей копии на основе:

svn info .

Скопируйте эту редакцию транка в ветку на сервере с

svn copy svn://yourrepo/trunk svn://yourrepo/branches/a -r [revision]

, а затем переключите свой туалет в филиал

svn switch svn://yourrepo/branches/a

Затем вы можете зафиксировать свои текущие изменения в ветке.

0 голосов
/ 09 августа 2011

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

Вот шаги:

  1. Создать новую папку филиала.
  2. Сделайте «svn info» и попробуйте получить номер редакции, когда вы сделали рабочую копию магистрали. Например, если вы сделали Рабочую копию на Rev 40, а ревизия HEAD теперь на 60, вам нужно использовать Rev 40 в качестве базовой ревизии новой ветки.
  3. Выполните «svn copy» и используйте этот номер редакции при копировании редакции магистрали в новую папку филиала.
  4. Теперь выполните svn checkout новой ветки.
  5. Скопируйте файлы из рабочей копии ствола в рабочую копию ветви.
  6. Передайте изменения из рабочей копии филиала и удалите рабочую копию магистрали.

Теперь у вас должна быть новая ветка с вашими текущими изменениями, основанная на фактической ревизии, когда вы начали свои изменения. Само собой разумеется, что новая ветвь будет значительно устаревшей и должна быть обновлена ​​от Транка. Вы можете отложить это, пока не будете готовы к слиянию.

0 голосов
/ 26 июля 2011

В пару простых шагов:

1) вы должны разветвить ствол (для этого потребуется создать другую папку в хранилище для новой ветки). Если вы используете Tortoise SVN , просто щелкните правой кнопкой мыши рабочую папку и выберите branch в подменю Tortoise Svn

.

2) в вашей рабочей папке вы должны использовать команду switch, чтобы начать работу в новой ветке. В Черепаха щелкните правой кнопкой мыши -> Переключить и выберите новую ветвь

и вы сейчас работаете в ветке

HTH, JP

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