You are viewing a plain text version of this content. The canonical link for it is here.
Posted to ivy-user@ant.apache.org by easyproglife <ea...@gmail.com> on 2006/11/20 11:15:33 UTC

Branches and Ivy

Hi.

I am trying to understand the relationship between Ivy and SCM branches with
the introduction of the 'branch' concept in ivy 1.4.

Here is the branching concept as I understand:
To be generic, a branch is a parallel source tree for parallel development
of projects. I guess if you release from both parallel branches in parallel
into ivy repository, you have to distinct the artifacts using distinct names
and/or repositories. I mean if you have project-A and project-A-branch-1
that are almost identical. Both of them generate JARs. I guess that in order
to make them different, you have to call them projectA.jar and
projectA-branch1.jar for example, or if you call them both 'projectA.jar'
you have to put them in 'main' and 'branch1' repositories accordingly.


My questions are:
1. Am I right with my point of view on the ivy-branch issue?
2. Why should Ivy directly support branches? I would expect any branch to
have its own ivy.xml. No?
3. We are using ClearCase. I wondered if someone has an experience with
ClearCase branching including all config-spec issues.

Thanks
easyproglife

Re: Branches and Ivy

Posted by Xavier Hanin <xa...@gmail.com>.
On 11/20/06, easyproglife <ea...@gmail.com> wrote:
>
> Hi.
>
> I am trying to understand the relationship between Ivy and SCM branches
> with
> the introduction of the 'branch' concept in ivy 1.4.
>
> Here is the branching concept as I understand:
> To be generic, a branch is a parallel source tree for parallel development
> of projects. I guess if you release from both parallel branches in
> parallel
> into ivy repository, you have to distinct the artifacts using distinct
> names
> and/or repositories. I mean if you have project-A and project-A-branch-1
> that are almost identical. Both of them generate JARs. I guess that in
> order
> to make them different, you have to call them projectA.jar and
> projectA-branch1.jar for example, or if you call them both 'projectA.jar'
> you have to put them in 'main' and 'branch1' repositories accordingly.
>
>
> My questions are:
> 1. Am I right with my point of view on the ivy-branch issue?


I think so.

2. Why should Ivy directly support branches? I would expect any branch to
> have its own ivy.xml. No?


Yes, each branch has its own ivy file. The advantage of handling branch in
Ivy is that you can easily ask for the latest version on a branch
(branch=xxx and rev=latest.integration) and that Ivy supports to define
default branch for a particular branch in the configuration file, so you can
say at one place that you are working on branch X of module A, then all your
dependencies on module A which do not specify the branch will be assumed to
ask for branch X. Since working on branches is usual in software
development, we thought that supporting branches like that instead of using
a trick in the version was cleaner. But you can simply ignore it if you
prefer another way to deal with them.

3. We are using ClearCase. I wondered if someone has an experience with
> ClearCase branching including all config-spec issues.


I have no experience on the subject.

 Xavier

Thanks
> easyproglife
>
>