And it takes .3 secs to switch your workspace between your two branches/tags …
Don’t forget that a lot of things that are heavy in SVN are feather weight in
Git.
Kind regards,
Peter Kriens
> On 26 okt. 2015, at 10:03, Carsten Ziegeler <[email protected]> wrote:
>
> Am 25.10.15 um 17:12 schrieb David Jencks:
>> Hi,
>>
>> In the 12+ years I’ve been working on apache projects I can’t recall any
>> time when I’ve wanted to simultaneously check out different branches of
>> modules of the same top level project. Therefore, unless anyone has actual
>> contrary experience, I’d be in favor of trying a single git repo and
>> refining it into multiple repos if we discover problems in real life use.
>> (I have wanted to check out different branches of the same project
>> simultaneously, but with git this is not helped by more repos).
>
> But if you to look at two modules in detail, like .e.g. a specific tag
> or branch of event admin and a tag/branch of metatype, you can't do this
> with a single git repo. You can only see one or the other.
> Therefore I don't think a single git repo is a good thing.
>
> Carsten
>>
>> thanks
>> david jencks
>>
>>> On Oct 25, 2015, at 2:47 AM, Christian Schneider <[email protected]>
>>> wrote:
>>>
>>> I am not sure if one git repo for everything would be a good idea. The main
>>> reason is that in git (unlike in subversion) each branch and tag you do
>>> contains all the other unrelated projects too.
>>> I think it would also be quite difficult to checkout a state of the repo
>>> where you need bundle A in branch A1 and bundle B in branch B2. Probably
>>> this would mean that you need to checkout two instances of the repo
>>> to have both branches visisble at the same time. You would then also have
>>> to be really careful to not pick a project from the wrong checkout as it
>>> would be in kind of an undefined state there.
>>>
>>> The other solution of having one git repo per bundle also seems to be quite
>>> difficult to manage as you need to checkout and sync every such checkout in
>>> the correct way. I have seen a project that does this at a customer and it
>>> is not very easy to work in this structure.
>>>
>>> In the Aries project we went for kind of a compromise.
>>>
>>> We aim for releases by subproject. So each subproject can go into one git
>>> repo.
>>> The advantage is that each tag in git really covers the whole subproject.
>>> So from the git side this is natural.
>>>
>>> The downside is of course that in many cases bundles are released that did
>>> not change at all.
>>> We make sure the package versions are done with semantic versioning. So
>>> from the OSGi point of view the versioning
>>> is still working as before.
>>>
>>> At the moment we have not yet done the migration to git but it is planned.
>>> We are currently moving each subproject to the release by subproject model
>>> gradually.
>>> Theoretically we can then move each subproject to git independently. I am
>>> not sure though how to move the change history over in that case.
>>> In any case the Aries JPA project is the first one that is fully converted
>>> to the release by subproject model if you want to take a look.
>>> https://github.com/apache/aries/tree/trunk/jpa
>>>
>>> Christian
>>>
>>> Am 24.10.2015 um 23:32 schrieb Benson Margulies:
>>>> On Sat, Oct 24, 2015 at 4:21 PM, David Jencks <[email protected]>
>>>> wrote:
>>>>> I like having several felix subprojects open in one eclipse instance at
>>>>> once, which the current svn structure facilitates. Having just one git
>>>>> svn rebase to run is nice. Is there a way to stitch together several
>>>>> smaller git repos that would work similarly? Not knowing how to do this,
>>>>> I am starting to lean towards one big repo.
>>>> Well, there are git submodules. But I hate to take everyone into that
>>>> rabbit hole. I think we should aim to start with one big repo and
>>>> assume we can tame the maven-release-plugin to start with.
>>>>
>>>>
>>>>> FWIW, I’m hoping to move DS onto a gradle based build soon.
>>>>>
>>>>> thanks
>>>>> david jencks
>>>>>
>>>>>> On Oct 24, 2015, at 2:51 PM, Benson Margulies <[email protected]>
>>>>>> wrote:
>>>>>>
>>>>>> Greeting, Marcel,
>>>>>>
>>>>>> It's not my intention to try to talk anyone into changing how they
>>>>>> release anything. For the things that are built with Maven, it's my
>>>>>> preference to avoid exercising the maven-release-plugin's feature of
>>>>>> handling multiple released items in a repo, but it's just a
>>>>>> preference. If the acceptable compromise is to have less repos than
>>>>>> releasable items (possibly as few as one repo), I'd personally rather
>>>>>> do that than not move to git at all.
>>>>>>
>>>>>> regards,
>>>>>>
>>>>>> benson
>>>>>>
>>>>>>
>>>>>> On Sat, Oct 24, 2015 at 2:43 PM, Marcel Offermans
>>>>>> <[email protected]> wrote:
>>>>>>> On 24 October 2015 at 11:36:03, Benson Margulies
>>>>>>> ([email protected](mailto:[email protected])) wrote:
>>>>>>>
>>>>>>>>> So I would definitely argue against getting a Git repository per
>>>>>>>>> bundle.
>>>>>>>>> Per subproject sounds like the right granularity to me.
>>>>>>>> If a subproject is released all at once, then we're completely
>>>>>>>> agreeing. If not, then your preference means exercising the
>>>>>>>> occasionally squishy part of the release plugin; maybe it will get
>>>>>>>> fixed once and for all.
>>>>>>> So for the dependency manager we reasoned as follows:
>>>>>>>
>>>>>>> 1) When talking about releases within Apache, we are talking about
>>>>>>> source code. Releasing that a subproject at a time makes sense to me as
>>>>>>> the code, even if it ends up in different bundles, clearly belongs
>>>>>>> together.
>>>>>>>
>>>>>>> 2) Binary releases are a matter of convenience and “what is convenient”
>>>>>>> depends a lot on where you’re coming from. A lot of people would argue
>>>>>>> that putting a binary in Maven is convenient, but there are definitely
>>>>>>> other options. The binary releases also don’t have to have a 1:1
>>>>>>> mapping with the source, so we can have N bundles being put in Maven
>>>>>>> and other repositories all from the same source release.
>>>>>>>
>>>>>>> Greetings, Marcel
>>>>>>>
>>>>>>>
>>>
>>
>>
>
>
> --
> Carsten Ziegeler
> Adobe Research Switzerland
> [email protected]