I’ve always been tempted to use Git, since this Tech Talk by Linus Torvalds in May 3, 2007.
[iframe src=”http://www.youtube.com/embed/4XpnKHJAok8″ width=”420″ height=”315″]
I even tried it a few times, but Mercurial commands seem more familiar to a Subversion user, and at this time, Mercurial GUI was more user friendly.
But then half a year ago, I wanted to convert to Mercurial our SVN code base at work, which is something like 15 man-years of C++.
I used the Mercurial ConvertExtension. The process took hours, used a few gigabytes on disk, but failed after using too much memory.
This failure was a clear signal: I started with the Git – SVN Crash Course.
I used the git-svn clone command, which also took a few hours to run, but succeeded after a shorter time, only using 600 megabytes. This was not even twice the size of the SVN working copy, but with the full history of our project!
Since then, I started using git for all my private repositories: I converted losslessly my private repositories, thanks to the marvelous Hg-Git Mercurial plugin.
I also registered to GiHub, and discovered a whole new dimension to open-source development!
There I truly discovered the power of a typical open-source Git workflow: the way to clone (fork) a repository, to make a correction, and then to make a pull request, fully integrated in the issue tracker.
And for the tools? GitHub help a lot creating, cloning and merging repositories. Under Linux I’ve become used to the good git command line. Under Windows, I am using the wonderful TortoiseGit GUI that I would recommend to you, at least to start.
Now I can tell you: if you try Git, and take the time to learn it subtleties, you will love it!