maven-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jason van Zyl <ja...@maven.org>
Subject An Experiment with GIT
Date Sat, 29 Sep 2007 17:40:42 GMT
Hi,

For anyone who wants to make changes to Maven but doesn't have access  
I am going to setup a GIT repository to try and enable some  
distributed development. After using GIT for about a week I'm having  
a hard time using SVN but obviously we're not going to be switching  
anytime soon.

But for anyone who has patches or wants to try and work with me to  
get changes in I am going to try this method of publishing Maven as a  
GIT repository which will allow anyone to clone the repository and  
work on any changes you like in a controlled way. Once you clone you  
can commit changes to your own copy of Maven and do whatever you  
like. Then in order for me to see your changes I can simply pull from  
your originally cloned repository to a branch on my side and merge.  
Merging is sooooooo easy with GIT. So easy in fact that it makes you  
wonder how SVN got it so wrong and makes it so painful compared to GIT.

This is the model that the Linux kernel uses where anyone has a real  
copy of the repository, they work as they like, creating branches for  
features of what have you.

I am trying this with Oleg Gusakov who has many ideas and is helping  
me do some experiments with the artifact resolution system. But  
anyone else who is interested in trying just let me know. This  
document is the most helpful:

http://utsl.gen.nz/talks/git-svn/intro.html

And a little collection of things I have read about GIT:

http://del.icio.us/jvanzyl/git

It is so damn fast it is unbelievable. With the visual tool that  
comes with it you can see the entire history of the project in a few  
minutes. It is very, very cool. I simply cannot believe how easy it  
is to merge bits from all over the place. My hope is that this method  
being truly distributed means that people can work on their branches  
in a way that's natural and we remove the immense tedium working with  
patches. If you have something good, it's now very easy for me to  
pull a branch from you and try it. If that branch works it then takes  
me a second to merge it. I test and them push back to subversion  
using the git-svn bridge.

In the short term I really only want to try with a few people but if  
you're keen, want to learn about GIT (which I highly, highly  
recommend) then I will take your patches. I think any developer here  
and anyone who has ever tried to contribute changes sees that the JIRA 
+patch model is highly unworkable and bordering on completely  
useless. JIRA might be fine to raise the issue but with a reference  
to a GIT repository to pull from it will make life infinitely easier.  
People who are not committers can work with people that are in a way  
that resembles everyon being part of the team. Dealing with patches  
just sucks ass and as a result we don't look at them nearly as often  
as we should so I hope this can become a model that enables people to  
contribute in a more effective way. I'm going to try this with Oleg  
but I am highly hopeful. I will help anyone who wants to try this as  
I see this as a way to truly collaborate with the community. Down  
with JIRA+patches! All hail JIRA+GIT! :-)

Thanks,

Jason

----------------------------------------------------------
Jason van Zyl
Founder,  Apache Maven
jason at sonatype dot com
----------------------------------------------------------




---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org


Mime
View raw message