Как создать филиал в SVN?

голоса
570

Как создать филиал в SVN?

Задан 05/08/2008 в 10:25
источник пользователем
На других языках...                            


9 ответов

голоса
569

Subversion позволяет легко (некоторые думают, что слишком легко), чтобы создать новую ветку с помощью команды SVN копирования.

$ svn copy svn+ssh://host.example.com/repos/project/trunk \
           svn+ssh://host.example.com/repos/project/branches/NAME_OF_BRANCH \
      -m "Creating a branch of project"
Ответил 05/08/2008 в 10:25
источник пользователем

голоса
315

Ветвление в Subversion способствует очень очень легкой и эффективной установки копирования.

Разветвление и тегирование являются фактически то же самое. Просто скопируйте всю папку в хранилище где - нибудь еще в хранилище с помощью svn copyкоманды.

В основном это означает, что в соответствии с соглашением, что копирование папки означает, - будь то резервного копирования, тег, филиал или whater. В зависимости от того, как вы хотите, чтобы думать о вещах (как правило, в зависимости от которого SCM инструмент, который Вы использовали в прошлом), необходимо создать структуру папок в вашем хранилище, чтобы поддержать свой стиль.

Общие стили должны иметь кучу папок в верхней части хранилища под названием tags, branches, trunkи т.д. - что позволяет скопировать все trunk(или суб-наборы) в tagsи / или branchesпапку. Если у вас есть более одного проекта вы можете повторить этот вид структуры в рамках каждого проекта:

Это может занять некоторое время, чтобы привыкнуть к концепции - но это работает - просто убедитесь, что вы (и ваша команда) ясно на конвенциях, которые вы собираетесь использовать. Это также хорошая идея, чтобы иметь хорошее соглашение об именах - то, что говорит вам, почему ответвления / метки было сделано и есть ли еще уместно это - рассмотреть способы архивирования ветвей, которые устарели.

Ответил 05/08/2008 в 14:40
источник пользователем

голоса
25

Если вы репо доступны через HTTPS, вы можете использовать эту команду для филиала ...

svn copy https://host.example.com/repos/project/trunk \
       https://host.example.com/repos/project/branches/branch-name \
  -m "Creating a branch of project"
Ответил 10/02/2016 в 20:36
источник пользователем

голоса
24
svn cp /trunk/ /branch/NEW_Branch

Если у вас есть какие - то локальные изменения в багажнике затем использовать Rsyncдля синхронизации изменений

rsync -r -v -p --exclude ".svn" /trunk/ /branch/NEW_Branch
Ответил 03/09/2013 в 10:14
источник пользователем

голоса
14

Как правило, вы бы скопировать его в SVN + SSH: //host.example.com/repos/project/branches/mybranch так что вы можете сохранить несколько филиалов в хранилище, но ваш синтаксис правомерен.

Вот несколько советов о том, как настроить макет хранилища .

Ответил 05/08/2008 в 13:40
источник пользователем

голоса
12

Предположим, вы хотите создать ветку от имени ствола (как «TEST»), затем используйте:

svn cp -m "CREATE BRANCH TEST" $svn_url/trunk $svn_url/branches/TEST
Ответил 23/07/2013 в 10:51
источник пользователем

голоса
11

Если вы еще планируете слияние вашей отрасли, я настоятельно рекомендую вам взглянуть на это:

Svnmerge.py

Я слышал, Subversion 1,5 строит больше слияния отслеживания, я не имею никакого опыта с этим. Мой проект на 1.4.x и svnmerge.py жизнь заставка!

Ответил 05/08/2008 в 13:46
источник пользователем

голоса
10

Полезный совет для новых пользователей SVN; это может немного помочь с получением правильного адреса быстро.

Run svn infoдля отображения полезной информации о текущем извлеченноге отрасли.

URL должен (если запустить СВН в корневой папке) даст вам URL, необходимо скопировать с.

Кроме того, чтобы переключиться на вновь созданную ветку, используйте svn switchкоманду:

svn switch http://my.repo.url/myrepo/branches/newBranchName
Ответил 28/03/2014 в 12:30
источник пользователем

голоса
5
  • Создать новую папку вне текущего проекта. Вы можете дать ему любое имя. (Пример: У вас есть проверка для проекта под названием «Настройка» И есть много проектов, как «Проект1», «Project2» .... И вы хотите создать ветку «Проект1» Так первым открыть ".. Настройка», щелкните правой кнопкой мыши и создайте новую папку и дать ему название„Project1Branch“).
  • Щелкните правой кнопкой мыши на "Myproject1" .... TortoiseSVN -> Branch / Tag.
  • Выберите рабочую копию.
  • Открыть браузер .... Просто право параллельно на «К URL».
  • Выберите настройки ..... щелкните правой кнопкой затем Добавить папку. и пройти через папку, которую вы создали. Вот это «Project1Branch». Теперь Жмите кнопку OK, чтобы добавить.
  • Возьмите проверку этого нового Banch.
  • Опять идти к вашему проекту какую ветвь вы хотите создать. Щелкните правой кнопкой мыши -> TorotoiseSVN ответвление / метку. Затем выберите рабочую копию. И вы можете дать URL в качестве вашего имени ветви. как {ваш IP-адрес / СВН / AAAA / Настройка / Project1Branch}. И вы можете установить имя в URL поэтому он будет создавать папку только с этим именем. Как {Ваш IP-адрес / СВН / AAAA / Customization / Project1Branch / MyProject1Branch}.
  • Нажмите на кнопку OK. Теперь вы можете увидеть журналы в ... ваша рабочая копия будет храниться в вашей отрасли.
  • Теперь вы можете взять чек ... и позволит вам наслаждаться вашей работы. :)
Ответил 05/02/2014 в 11:24
источник пользователем

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more