Я хочу сделать mvn-релиз: подготовить, который удалит «-SNAPSHOT» из версии и пометит его в SVN.
У меня есть эти настройки в pom.xml:
<scm> <connection>scm:svn:http://subversion.local:3690/svn/projects/x/trunk</connection> <developerConnection>scm:svn:http://subversion.local:3690/svn/projects/x/tags</developerConnection> <url>scm:svn:http://subversion.loi.local:3690/svn/projects/x/tags</url> </scm>
Но они не ведут себя так, как я хотел.Вместо этого он получает все из тегов /, повторно тегирует его в /tags.
Итак, еще раз, что я хочу, возьмите из HEAD, бросьте "-SNAPSHOT" и отметьте его в / tags
Тег <scm> обозначает конфигурацию соединения только для чтения (элемент «соединение»), соединение чтения-записи («developerConnection») и общедоступный URL-адрес. Это не имеет ничего общего с тегами. В небольшой локальной сети обычно эти 3 параметра одинаковы.
<scm>
Для базы тегов необходимо настроить плагин релиза:
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-release-plugin</artifactId> <configuration> <tagBase>scm:svn:http://subversion.local:3690/svn/projects/x/tags</tagBase> <autoVersionSubmodules>true</autoVersionSubmodules> </configuration> </plugin>
просто хотел сказать, что параметр tagBase актуален только для SVN! (CVS не использует его, например.)
Я успешно использую maven-release-plugin с developerConnection, указывающим на транк.
developerConnection
При подготовке релиза тег создается в каталоге /tags (плагин также обновляет connection и developerConnection в pom.xml тега.
/tags
connection