On Mar 19, 2011, at 4:23 AM, Sergiu Dumitriu wrote:
On 03/18/2011 10:40 AM, Vincent Massol wrote:
Hi everyone,
I'd like test the waters and see what you'd feel about moving XWiki's source to GitHub.
Pros: * Use Git instead of Subversion. Which means a better SCM especially wrt branching / diagnosins bugs (bissect) just to name 2
Offline commits, and offline (and faster and more powerful) access to the full commit history are very important in my opinion.
* More contributors since it's easy to fork/branch and we can see contributor's patches (pull requests) and apply them way more easily than with subversion
+ more visibility/recognition for the contributors, since they are preserved as the authors.
* More collaboration in general between committers and contributors * A better SCM web site (check github.com - offers graphs/stats, views of forked/branched repos, etc)
I wouldn't call it a better SCM site, since other tools offer nice views of the repository. But it is a better source *collaboration* site since it shows forks/branches/pulls very nicely.
* Good buzz for us (tech marketing) * GitHub provides SVN integration (see https://github.com/blog/644-subversion-write-support) which means we can continue using SVN tools such as svnsearch, ohloh, our IDE integrations, etc
svnsearch won't be that needed since git/github offer many of those tools natively, but the graphs from svnsearch are easier to obtain and show live.
IDE integrations should work just as well (if not better) with Git.
* Less admin work and less maintenance since this is handled by GitHub itself * Good uptime on GitHub (probably at least as good as ours if not better) * Improved developer spirit since most devs wants to start using Git
+1, I've been doing this for a couple of years already and I'm happy with the experience.
* POM changes for the new repository configuration.
Cons: * Have to learn a new SCM/new tools * No integration of users with xwiki.org
Do you mean that access rights should be defined in xwiki.org as it is now, with the CommittersGroup? I guess that's not possible.
Yes that's what I meant.
* Import/reorg work to be done obviously
I already started doing that, I should find some time to finish
Please let's focus frist on the 3.0 final release before we start working on Git :)
importing applications and plugins. Before doing the final switch I should re-synchronize with the svn repository.
Should the contrib repository be imported as well?
I'd say yes. We need to check how well the SVN integration works in GitHub
One problem is that the default size limit is for 300M of data, and we're already approaching that limit (thanks to the early non-maven days when we bundled all the jars in our repo). I think that if we request it, we'll be granted more space for free, as an open source project.
Well we better ask ASAP before we start any move since this is critical for a move.
* Reliance on an external provider (but seen the other OSS projects there I'm not worried and there's no lock in since your have the repos spread on all users' machines)
Yep, a lot of big names are moving there.
IMO the pros heavily outweight the cons.
WDYT?
+1.
And replying to your other mail, +1 for doing it after the 3.0 release, but as soon as possible after that, so that we can get familiar with it and iron out any quirks before the 3.1M1 release.
We should write a GitApp, similar to the SvnApp, which works directly with a git repository.
Sure but I'd rather we quickly verify that the current SVNApp works with the GitHub SVN integration for now. Thanks -Vincent