[dev] Git reorganization

wrobel at pardus.de wrobel at pardus.de
Thu Mar 28 21:41:16 UTC 2013


Zitat von Michael M Slusarz <slusarz at horde.org>:

> Going to try to sum up what I think is forming as a consensus.
>
> * Moving applications and framework packages to separate repos seems  
> to be the most supported idea.
>   - GitHub allows unlimited public repos, so we are good there
>   - Can maintain all history.  See  
> https://help.github.com/articles/splitting-a-subpath-out-into-a-new-repo
>   - Might be a bit more unwieldy to work with (current monolithic  
> repo allows commits across applications; but it might be a good  
> thing to require different commits for each application for a more  
> granular approach at adding features/fixing bugs.)
>
> * Talk of using git subtree(?)
>   - http://log.pardus.de/2012/08/modular-git-with-git-subtree.html
>   - However, this approach seems to completely neglect the current  
> issue of "what should the master branch be?" or whether this  
> question can even be properly solved when dealing with so many  
> disparate pieces

I did not pursue that option any further. But my conclusion from the  
attempts I made was that this approach is somewhat too complex. The  
initial subtree split takes ages and it feels wrong to have the same  
code in two separate places. The only argument in favor of git subtree  
- as far as I can remember - was the fact that having a monolithic  
repo allows quick installation of Horde from git.

If however - and I'm pretty certain this is possible - you can achieve  
that via composer then I believe this is the better option. As far as  
I know managing a multitude of dependencies that are pulled via PEAR,  
packagist.org or git is what composer is about. The downside of  
composer is that it lends itself to bundling the dependencies as  
"vendor" libraries within your releases - hello Java hell ;) But I  
guess this is nothing Horde will do.

And the last time I chatted with Nils about composer it didn't have  
support for the installation of web assets - so for Horde the result  
would be a mixture of using composer and PEAR package definitions. I  
have no clue how much work it would be to get composer on par with  
PEAR in that area. Nils suggested that this should not be too hard.  
But the components helper we have should also be capable of managing  
PEAR and composer package definitions in parallel.

Cheers,

Gunnar

>
> * Worries about scripting to setup repos
>   - Argument was made that it only takes 2 lines currently to create  
> an installation.
>   - However recent discussion on mailing list pointed out it is  
> extremely difficult for non-developers to set up an installation  
> using git.  So the current scripts aren't perfect by any means.
>   - Additionally, whatever way we switch to will also need to be  
> scripted so we would be in no different place than we are currently.
>   - No solution is going to work out-of-the-box.
>
> michael
>
> ___________________________________
> Michael Slusarz [slusarz at horde.org]
>
> -- 
> dev mailing list
> Frequently Asked Questions: http://wiki.horde.org/FAQ
> To unsubscribe, mail: dev-unsubscribe at lists.horde.org





More information about the dev mailing list