Пометка товара, компоненты которого находятся в разных хранилищах SVN - PullRequest
2 голосов
/ 19 августа 2011

Я управляю набором программных проектов, а именно, X, Y и Z. Существует множество зависимостей между ними, то есть X -> Y -> Z. Это означает, что проект X зависит от интерфейсовПроекты Y и Y зависят от интерфейсов Z.

К сожалению, X, Y и Z хранятся в отдельных репозиториях SVN.Теперь вопрос в том, как я могу сделать снимок (создать тег) стабильной версии моего продукта, включая конкретные версии X, Y и Z?Любые решения будут полезны.

Ответы [ 3 ]

3 голосов
/ 19 августа 2011

Посмотрите на функцию externals в SVN. http://svnbook.red -bean.com / о / 1,6 / svn.advanced.externals.html

1 голос
/ 01 сентября 2011

svn: externals выполняет работу за вас, как уже упоминалось ....Проверьте этот блог для пошагового описания.Первый комментарий в блоге улучшает рабочий процесс, используя «ветку релиза».

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

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

svn://repo1/X
svn://repo2/Y
svn://repo3/Z

Вы должны создать корневой проект, подобный

svn://repo4/root

, где

svn://repo4/root/trunk

будет иметь внешние элементы, определенные как

X svn://repo1/X/trunk
Y svn://repo2/Y/trunk
Z svn://repo3/Z/trunk

и

svn://repo4/root/tags/TAG

будут иметь внешние элементы, определенные как

X svn://repo1/X/tags/TAG
Y svn://repo2/Y/tags/TAG
Z svn://repo3/Z/tags/TAG

Вы можете создать начальное внешнее определение с помощью команды svn propset ;когда вы хотите создать новый тег, вы помечаете все свои проекты отдельно, как обычно, включая root.Затем вы проверяете новый корневой тег с параметром - ignore-externals и снова устанавливаете внешние с соответствующими URL-адресами тегов.

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