This blog post is more or less a copy paste of the investigation and formulation work Assaf did for Buildr.
First, I’l take for given Eclipse is not moving away from CVS anytime soon. This post is not about replacing CVS for git.
In that context I still think git can help with Eclipse, and here is how:
git integrates well with CVS. You can clone a CVS repository, work in your git repository for some time, and commit back to CVS after a while.
We could easily imagine that some Eclipse committers would choose to use that development method for themselves. For example, you have a critical modification to do that would mess up the CVS trunk for a week. Your working copy may be a git repository over which you can branch as much as you want and that you can share with other committers.
Now, if you take a step back, you don’t have to keep that for committers only. You could even generalize that to contributors.
Here is what would be the process:
1. I am not happy about something, and I open a bug about it.
2. After some discussions, it becomes obvious there’ll be a need for a patch.
3. I fork the project into a git repository, and I make it publicly available to people.
4. I and others work on the patch.
5. The patch is ready and is attached back to the bug, and we do the IP legal work with the contributors.
Do you think Eclipse could offer a space for hosting git repositories ?
If you are interested into getting free hosting of git, look up github for example.
Your comments and reactions are most welcome.
I think a GIT repo would be great. Not only does it help developers, it also helps those who would like to patch Eclipse because of bugs that won’t/can’t be fixed in the main trunk. I’ve submitted a few patches which will never see the light of day because (in their opinion) it does the wrong thing. Forking Eclipse is too much high maintenance because of a single bugfix, but having a GIT repo might make it easier to keep up-to-date with the main tree whilst still permitting custom bugfixes for those that can’t persuade the Eclipse team to adopt them.
My point is that it is ok to have a CVS repo, it is still very easy to fork it as git does that well.
It seems you are having more of an issue with the Eclipse team refusing your patches ?!
Talking about GIT, check out how Linus Torvalds presents GIT at the Googleplex. Enjoy the technical details and the geeky humor
http://www.youtube.com/watch?v=4XpnKHJAok8
regards,
Moritz
I like Git.
But it doesn’t work as well under Windows as it might. And it doesn’t have a mature Eclipse plugin.
Mercurial has both of these things.
However, it doesn’t front-end another existing repository as nicely as GIT.
So here’s how I see things:
If you want to front-end another repository (CVS or SVN), and don’t care about Eclipse integration, Git’s your tool.
If you want an actual replacement for CVS or SVN, Mercurial looks like the better choice right now due to the better Windows support and having a decent Eclipse plugin.