С Subversion, есть ли способ добавить W C внутри другого W C? - PullRequest
0 голосов
/ 12 января 2020

Скажем, у меня есть W C, 1, в котором есть еще один W C, 2, например:

Структура:

/1
  /.svn
  /2
    /.svn

Где 2 проверено из другого репо целиком (не из синхронизации / зеркала)

Есть ли способ сделать svn add 2 без получения сообщения:

svn: warning: W150002: '/1/2' is already under version control
svn: E200009: Could not add all targets because some targets are already versioned
svn: E200009: Illegal target for the requested operation

В настоящее время я просто переименовываю .svn до @svn предварительно доп.

1 Ответ

1 голос
/ 12 января 2020

Если вы хотите действительно объединить wc-2 в wc-1, вы должны export wc-2 из хранилища:

svn export svn://wc-2
svn add wc-2
svn commit wc-2

В этом случае вы потеряете соединение wc-2 репозиторий, поэтому вы не можете обновить его, когда он имеет новые коммиты.

Если вы хотите обновить его внутри вашей wc-1 рабочей копии, вы хотите прочитать о externals :

Иногда полезно создать рабочую копию, которая сделана из нескольких различных проверок. Например, вы можете захотеть, чтобы разные подкаталоги приходили из разных мест в хранилище или, возможно, из разных хранилищ в целом. Конечно, вы можете настроить такой сценарий вручную - используя svn checkout для создания такой структуры вложенных рабочих копий, которую вы пытаетесь достичь. Но если этот макет важен для всех, кто использует ваш репозиторий, каждому другому пользователю потребуется выполнить те же операции извлечения, что и вы.

К счастью, Subversion обеспечивает поддержку внешних определений. Внешнее определение - это сопоставление локального каталога с URL-адресом, а в идеале - с конкретной версией - версионного каталога.

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