Есть ли способ настроить Ivy для получения зависимостей из ветви без редактирования всех соответствующих зависимостей? - PullRequest
3 голосов
/ 13 октября 2011

У меня есть несколько проектов, которые имеют зависимости друг от друга, а также от внешних библиотек.Управление зависимостями осуществляется с помощью плюща и нашего собственного репозитория.Недавно нам пришлось разветвляться, потому что есть одна версия проектов, которая находится в QA, и другая, в которой ведется текущая разработка.

Проблема в том, что я не могу найти способ использовать плющ в новой ветви, не добавляя атрибут ветви к каждой внутренней зависимости.

Я думал о добавлении атрибута ветви в разрешениеЗадача и активация встроенного режима, но тогда это также будет относиться к внешним библиотекам, что не правильно.Но добавление атрибута ветки к каждому внутреннему депо было бы громоздким.

1 Ответ

4 голосов
/ 15 октября 2011

То есть вы хотите провести различие между артефактами, опубликованными из ветви, и артефактами, опубликованными из ствола?

Я использую задачу ivy buildnumber для увеличения номера выпуска каждой публикации.

<ivy:buildnumber organisation="${ivy.organisation}" module="${ivy.module}" revision="${project.version}"/>

<ivy:publish pubrevision="${ivy.new.revision}" resolver="${project.resolver}"  status="${project.status}">
    <artifacts pattern="${build.dir}/dist/[artifact].[ext]"/>
</ivy:publish>

В ветвях используется свойство project.version , которое указывает, из какой версии ветки магистрали они происходят, например:

project.version=1.0-MYBRANCH

Этот подход означает, что опубликованные артефакты имеют следующие номера редакций:

1.0-MYBRANCH.0
1.0-MYBRANCH.1
1.0-MYBRANCH.2
..

Принимая во внимание, что выпуски ствола были бы:

1.0.0
1.0.1
1.0.2
..
...