Svn: как создать ветку от определенной ревизии ствола

Следующее действие создаст ветку только из головной версии ствола. Как создать ветку из определенной версии? Спасибо.

$ svn copy http://svn.example.com/repos/calc/trunk \
       http://svn.example.com/repos/calc/branches/my-calc-branch \
  -m "Creating a private branch of /calc/trunk."

Ответ 1

Проверьте команду справки:

svn help copy

  -r [--revision] arg      : ARG (some commands also take ARG1:ARG2 range)
                             A revision argument can be one of:
                                NUMBER       revision number
                                '{' DATE '}' revision at start of the date
                                'HEAD'       latest in repository
                                'BASE'       base rev of item working copy
                                'COMMITTED'  last commit at or before BASE
                                'PREV'       revision just before COMMITTED

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

svn copy -r123 http://svn.example.com/repos/calc/trunk \
    http://svn.example.com/repos/calc/branches/my-calc-branch

Где 123 будет номером ревизии в соединительной линии, которую вы хотите скопировать. Как отмечали другие, вы также можете использовать синтаксис @. Я предпочитаю более четкое разделение ревизии # от URL-адреса лично.

Как указано в справке, вы также можете заменить ревизию # на определенные слова:

svn copy -rPREV http://svn.example.com/repos/calc/trunk \
    http://svn.example.com/repos/calc/branches/my-calc-branch

Скопировал бы "ревизию перед COMMITTED".

Ответ 2

$ svn copy http://svn.example.com/repos/calc/[email protected] \
   http://svn.example.com/repos/calc/branches/my-calc-branch \
   -m "Creating a private branch of /calc/trunk."

Где 192 - это ревизия, которую вы указываете

Вы можете найти эту информацию из SVN Book, в частности здесь страницу о svn copy

Ответ 3

добавить версию, используя символ "@":

svn copy http://[email protected] http://dev

Или используйте параметр командной строки -r [--revision].