Git is quickly becoming one of the best option for using a DVCS (Distributed Version Control System). Git main goal is to be quick (most everything you do is local), and has already been battle tested by the Linux Kernel dev team.
Recently, I’ve started experimenting with git after Rick switched Mephisto to git.
Even though things are pretty straightforward, some things are easier than others, especially when you have to take it all in in one shot.
So, over the weekend, I created git-rails, completed with a rubyforge project, an installable gem (gem install git-rails), and a git repository hosted by Gitorious
Currently, git-rails provides 3 functions:
- init repository (hookup to remote git repository, rails aware .gitignore)
- install plugin managed by git (using git submodules)
- update plugin
For now, I’m happy to use giston to manage svn hosted plugins, but I’m considering whether to add that functionality as well. We’ll see how things go.
To get started with git-rails, head over to the new git-rails project page.
Inspired by piston, and its newest sibling: giston/braid
It is quite easy to see why gits are fast becoming the new trends in programming. The reliability and accuracy of its performance is impeccable, not to mention speedy.
If it’s easy to use and everything not complicated I’ll go on it.
@Tim: it is indeed becoming trendy. There are some alternatives for a distributed source control: Mercurial (hg), darcs, Bazaar (Bzr), and also monotone and svk (which I’ve played with qutie a bit).
@Carlo: The basic stuff is fairly easy. The big promise is how easy it is to create branches, switch between them, and merge.
The biggest challenge I see with git (and probably all the others) is that documentation is not as complete as svn/cvs. And that’s partly why I wrote git-rails, to capture some of the harder recipes (and I’ll keep including more as I need, or as people suggest/contribute).