You are viewing a plain text version of this content. The canonical link for it is here.
Posted to infrastructure-dev@apache.org by Jan Topiński <jt...@chatka.org> on 2009/06/05 09:12:34 UTC

Servicemix git repository

Hi,

I found your email on http://git.apache.org/ and I fell in the category 
"or want to see another Apache codebase mirrored". In my work I need to 
exchange pathed version of servicemix with 2 other organizations. It is 
much easier using git than subversion. But I understand that mirroring 
svn repository for smx may be little more difficult than usually due to 
   separate components and engines root directories in svn that if I 
understand it well translates to separate repositories in git.
I would be happy if you could help me but will also understand if this 
is to much trouble. If you need any help like writing scripts or 
anything else I'm - of course - willing to help.

Best regards,

Jan Topinski

Re: Servicemix git repository

Posted by Santiago Gala <sa...@gmail.com>.
El sáb, 06-06-2009 a las 12:19 +0200, Grzegorz Kossakowski escribió:
> Jukka Zitting pisze:
> > Hi,
> > 
> > 2009/6/5 Jan Topiński <jt...@chatka.org>:
> >> I found your email on http://git.apache.org/ and I fell in the category "or
> >> want to see another Apache codebase mirrored". In my work I need to exchange
> >> pathed version of servicemix with 2 other organizations. It is much easier
> >> using git than subversion. But I understand that mirroring svn repository
> >> for smx may be little more difficult than usually due to  separate
> >> components and engines root directories in svn that if I understand it well
> >> translates to separate repositories in git.
> > 
> > Yes. Normally we create a separate Git mirror for each codebase that
> > you'd typically checkout from svn. For example, see the many Directory
> > or Maven repositories we have mirrored.
> > 
> > So for creating Git mirrors for ServiceMix, we'd need a list of the
> > separate codebases you have, and the locations of the trunk, branches
> > and tags of each of those codebases. If a codebase is using the
> > standard svn {trunk,branches,tags} structure, then just the root URL
> > of that svn tree is sufficient.
> 
> Jukka,
> 
> I had a quick look at servicemix's layout and my impression is that they have *lots* of small subprojects. This would
> create many, many git repositories. This would bring us to the question how to easily manage them and integrate into one
> project.
> 
> Or is it out of our concern as we are plain Git mirror provider?
> 

When I experimented I did several tests on having git repositories with
several different version trees, and it is no problem for git to have
several roots, just not so common in practice.

git-svn can manage several svn-remotes too, but it is trickier as
-R<remote-name> needs to be used to manage each svn repository.

So for fetching it needs to be done in a loop using each -R<remote-name>
in turn...

But it is doable, and I guess the use case for patching the git-svn perl
script to have options to fetch *all* heads of *all* svn-remotes is
reasonable (rebase only touches the currently checked out tree, so it
will limit to this remote).

I guess Jukka's mirroring code would need some tweak to deal with a
mirror like this, but it looks again doable.

Something like this could be useful also to have both the code and the
web site (for instance) in the same git repository. This use case is way
less useful, I guess, except where people is using environment to point
to the repo, and different checkouts from the same repo...

Do you think something like this is possible/doable/worth-it? :)

Regards
santiago


Re: Servicemix git repository

Posted by Grzegorz Kossakowski <gk...@apache.org>.
Jan Topiński pisze:
> Yes,
> Developer must checkout ones for each trunk (or any branch he wishes).
> Svn "repositories" (collections of trunk/banches/tags) in servicemix are
> placed as follows:
> For servicemix versions:
> http://svn.apache.org/repos/asf/servicemix/smx3/<here>
> http://svn.apache.org/repos/asf/servicemix/smx4/
> under subdirectories
> # bundles/
> # features/
> # kernel/
> # legal/
> # nmr/
> # specs/
> and than
> there are some utilites repository
> http://svn.apache.org/repos/asf/servicemix/utils
> http://svn.apache.org/repos/asf/servicemix/components/shared-libraries/
> http://svn.apache.org/repos/asf/servicemix/archetypes/
> http://svn.apache.org/repos/asf/servicemix/servicemix-pom
> and repository for each binding in:
> http://svn.apache.org/repos/asf/servicemix/components/bindings/
> and for each engine in:
> http://svn.apache.org/repos/asf/servicemix/components/engines/
> and plugins:
> http://svn.apache.org/repos/asf/servicemix/maven-plugins/
> 
> And than there are some things that are less likely to be branched and
> these are stored with no trunk folder whatsoever like:
> http://svn.apache.org/repos/asf/servicemix/site/
> and others,
> So as you can see there are lots of repositories.

Jan, have a look at https://issues.apache.org/jira/browse/INFRA-2091 and anwser my question, please. It's worth to not
that handful number of repositories is already mirrored.

-- 
Best regards,
Grzegorz Kossakowski

Re: Servicemix git repository

Posted by Santiago Gala <sa...@gmail.com>.
El mar, 09-06-2009 a las 22:43 +0200, Jukka Zitting escribió:
> Hi,
> 
> On Tue, Jun 9, 2009 at 8:04 PM, Santiago Gala<sa...@gmail.com> wrote:
> > If there is a semi-automated way to get the bunch of repos I might try
> > to merge them into one big "all-in-one" repo, for people to experiment.
> > Depending on results, either approach is valid
> 
> It might be an interesting exercise, but I'd rather keep the mapping
> between svn and git as simple and straightforward as possible.
> 

No problem

> If the ServiceMix people think it's a good idea to have just a single
> repository, they could move all their code into a single svn trunk.
> But I'm sure there's a good reason to keep all those codebases
> separate.
> 

Well, even with a single git repository, only *one* tree can be checked
out at a time. In such a set up, to get several checkouts from the same
repository would require using environment variable (GIT_DIR), etc.

In a sense, such a git set up would keep all those codebases separate
*in the same repository*.

But my proposal was highly speculative, no need to go there

Regards
Santiago


> BR,
> 
> Jukka Zitting


Re: Servicemix git repository

Posted by Jukka Zitting <ju...@gmail.com>.
Hi,

On Tue, Jun 9, 2009 at 8:04 PM, Santiago Gala<sa...@gmail.com> wrote:
> If there is a semi-automated way to get the bunch of repos I might try
> to merge them into one big "all-in-one" repo, for people to experiment.
> Depending on results, either approach is valid

It might be an interesting exercise, but I'd rather keep the mapping
between svn and git as simple and straightforward as possible.

If the ServiceMix people think it's a good idea to have just a single
repository, they could move all their code into a single svn trunk.
But I'm sure there's a good reason to keep all those codebases
separate.

BR,

Jukka Zitting

Re: Servicemix git repository

Posted by Santiago Gala <sa...@gmail.com>.
El mar, 09-06-2009 a las 16:38 +0200, Grzegorz Kossakowski escribió:
> Jan Topiński pisze:
> > Yes,
> > Developer must checkout ones for each trunk (or any branch he wishes).
> > Svn "repositories" (collections of trunk/banches/tags) in servicemix are
> > placed as follows:
> > For servicemix versions:
> > http://svn.apache.org/repos/asf/servicemix/smx3/<here>
> > http://svn.apache.org/repos/asf/servicemix/smx4/
> > under subdirectories
> > # bundles/
> > # features/
> > # kernel/
> > # legal/
> > # nmr/
> > # specs/
> > and than
> > there are some utilites repository
> > http://svn.apache.org/repos/asf/servicemix/utils
> > http://svn.apache.org/repos/asf/servicemix/components/shared-libraries/
> > http://svn.apache.org/repos/asf/servicemix/archetypes/
> > http://svn.apache.org/repos/asf/servicemix/servicemix-pom
> > and repository for each binding in:
> > http://svn.apache.org/repos/asf/servicemix/components/bindings/
> > and for each engine in:
> > http://svn.apache.org/repos/asf/servicemix/components/engines/
> > and plugins:
> > http://svn.apache.org/repos/asf/servicemix/maven-plugins/
> > 
> > And than there are some things that are less likely to be branched and
> > these are stored with no trunk folder whatsoever like:
> > http://svn.apache.org/repos/asf/servicemix/site/
> > and others,
> > So as you can see there are lots of repositories.
> 
> Looks scary but I'll try to create an issue in JIRA summarizing what needs to be mirrored this evening and we'll see how
> to proceed.
> 

If there is a semi-automated way to get the bunch of repos I might try
to merge them into one big "all-in-one" repo, for people to experiment.
Depending on results, either approach is valid

WDYT?
Santiago


Re: Servicemix git repository

Posted by Grzegorz Kossakowski <gk...@apache.org>.
Jan Topiński pisze:
> Yes,
> Developer must checkout ones for each trunk (or any branch he wishes).
> Svn "repositories" (collections of trunk/banches/tags) in servicemix are
> placed as follows:
> For servicemix versions:
> http://svn.apache.org/repos/asf/servicemix/smx3/<here>
> http://svn.apache.org/repos/asf/servicemix/smx4/
> under subdirectories
> # bundles/
> # features/
> # kernel/
> # legal/
> # nmr/
> # specs/
> and than
> there are some utilites repository
> http://svn.apache.org/repos/asf/servicemix/utils
> http://svn.apache.org/repos/asf/servicemix/components/shared-libraries/
> http://svn.apache.org/repos/asf/servicemix/archetypes/
> http://svn.apache.org/repos/asf/servicemix/servicemix-pom
> and repository for each binding in:
> http://svn.apache.org/repos/asf/servicemix/components/bindings/
> and for each engine in:
> http://svn.apache.org/repos/asf/servicemix/components/engines/
> and plugins:
> http://svn.apache.org/repos/asf/servicemix/maven-plugins/
> 
> And than there are some things that are less likely to be branched and
> these are stored with no trunk folder whatsoever like:
> http://svn.apache.org/repos/asf/servicemix/site/
> and others,
> So as you can see there are lots of repositories.

Looks scary but I'll try to create an issue in JIRA summarizing what needs to be mirrored this evening and we'll see how
to proceed.

-- 
Grzegorz Kossakowski

Re: Servicemix git repository

Posted by Jan Topiński <jt...@chatka.org>.
Yes,
Developer must checkout ones for each trunk (or any branch he wishes).
Svn "repositories" (collections of trunk/banches/tags) in servicemix are 
placed as follows:
For servicemix versions:
http://svn.apache.org/repos/asf/servicemix/smx3/<here>
http://svn.apache.org/repos/asf/servicemix/smx4/
under subdirectories
# bundles/
# features/
# kernel/
# legal/
# nmr/
# specs/
and than
there are some utilites repository
http://svn.apache.org/repos/asf/servicemix/utils
http://svn.apache.org/repos/asf/servicemix/components/shared-libraries/
http://svn.apache.org/repos/asf/servicemix/archetypes/
http://svn.apache.org/repos/asf/servicemix/servicemix-pom
and repository for each binding in:
http://svn.apache.org/repos/asf/servicemix/components/bindings/
and for each engine in:
http://svn.apache.org/repos/asf/servicemix/components/engines/
and plugins:
http://svn.apache.org/repos/asf/servicemix/maven-plugins/

And than there are some things that are less likely to be branched and 
these are stored with no trunk folder whatsoever like:
http://svn.apache.org/repos/asf/servicemix/site/
and others,
So as you can see there are lots of repositories.

Jan

Jukka Zitting pisze:
> Hi,
> 
> 2009/6/6 Grzegorz Kossakowski <gk...@apache.org>:
>> I had a quick look at servicemix's layout and my impression is that they have
>> *lots* of small subprojects. This would create many, many git repositories.
>> This would bring us to the question how to easily manage them and integrate
>> into one project.
> 
> How do they handle this with svn, i.e. does a developer have multiple
> different svn checkouts when he works on ServiceMix? If yes, then we
> should do the same with the Git mirrors.
> 
> BR,
> 
> Jukka Zitting


Re: Servicemix git repository

Posted by Jukka Zitting <ju...@gmail.com>.
Hi,

2009/6/6 Grzegorz Kossakowski <gk...@apache.org>:
> I had a quick look at servicemix's layout and my impression is that they have
> *lots* of small subprojects. This would create many, many git repositories.
> This would bring us to the question how to easily manage them and integrate
> into one project.

How do they handle this with svn, i.e. does a developer have multiple
different svn checkouts when he works on ServiceMix? If yes, then we
should do the same with the Git mirrors.

BR,

Jukka Zitting

Re: Servicemix git repository

Posted by Grzegorz Kossakowski <gk...@apache.org>.
Jukka Zitting pisze:
> Hi,
> 
> 2009/6/5 Jan Topiński <jt...@chatka.org>:
>> I found your email on http://git.apache.org/ and I fell in the category "or
>> want to see another Apache codebase mirrored". In my work I need to exchange
>> pathed version of servicemix with 2 other organizations. It is much easier
>> using git than subversion. But I understand that mirroring svn repository
>> for smx may be little more difficult than usually due to  separate
>> components and engines root directories in svn that if I understand it well
>> translates to separate repositories in git.
> 
> Yes. Normally we create a separate Git mirror for each codebase that
> you'd typically checkout from svn. For example, see the many Directory
> or Maven repositories we have mirrored.
> 
> So for creating Git mirrors for ServiceMix, we'd need a list of the
> separate codebases you have, and the locations of the trunk, branches
> and tags of each of those codebases. If a codebase is using the
> standard svn {trunk,branches,tags} structure, then just the root URL
> of that svn tree is sufficient.

Jukka,

I had a quick look at servicemix's layout and my impression is that they have *lots* of small subprojects. This would
create many, many git repositories. This would bring us to the question how to easily manage them and integrate into one
project.

Or is it out of our concern as we are plain Git mirror provider?

-- 
Grzegorz Kossakowski

Re: Servicemix git repository

Posted by Jukka Zitting <ju...@gmail.com>.
Hi,

2009/6/5 Jan Topiński <jt...@chatka.org>:
> I found your email on http://git.apache.org/ and I fell in the category "or
> want to see another Apache codebase mirrored". In my work I need to exchange
> pathed version of servicemix with 2 other organizations. It is much easier
> using git than subversion. But I understand that mirroring svn repository
> for smx may be little more difficult than usually due to  separate
> components and engines root directories in svn that if I understand it well
> translates to separate repositories in git.

Yes. Normally we create a separate Git mirror for each codebase that
you'd typically checkout from svn. For example, see the many Directory
or Maven repositories we have mirrored.

So for creating Git mirrors for ServiceMix, we'd need a list of the
separate codebases you have, and the locations of the trunk, branches
and tags of each of those codebases. If a codebase is using the
standard svn {trunk,branches,tags} structure, then just the root URL
of that svn tree is sufficient.

BR,

Jukka Zitting