Main image
15th September
2010
written by

So far all my code versioning needs has been covered by CVS and SVN, but recently I keep hearing about distributed version control. Git and Mercurial are very popular topics in certain parts of my social circle, so I decided that I need to look into the topic (some very painful personal experience with a large programming project on Subversion also had some motivational influence on that decision).

So where to start?

I decided to start looking into Git. This was not a deliberate deselection of Mercurial but motivated by my attendance at the IT-conference JAOO in a months time and at JAOO Scott Chacon from GitHub will host a Git 101 tutorial, which I am considering attending (oh, and one of the GitHub founders, Tom Preston-Werner, will do a presentation called “Mastering Git Basics”, which also could be interesting).

My starting point was wikipedia and as it mentions that Git is designed and originally developed by Linus Thorvalds, I googled Git together with his name to see what he had to say about the subject. The result was this Tech talk from Google, that I quite enjoyed:

Then I told my twitter friends that am looking into Git and as always they give great feedback. My favorite was from jlouis666, who pointed me to a page with the Pro Git book by aforementioned Scott Chacon (the guy hosting a Git tutorial at JAOO), which is available online. I’m hoping to look into it before his tutorial.

So far I have not had time to really play with Git. Because all my existing projects are in SVN and migrating between two such different systems would probably be unwise/a pain I am saving my practical experience with Git for my next project. I hope that these things I am looking into will prepare me for the practical experience, but any advise you have could really help too…

After JAOO I plan to look into Mercurial/hg – If you know of good sources of information for that I would love to hear about it. (I guess with all the Git-stuff at JAOO they didn’t have any time slots left for Mercurial or maybe they have just chosen their favorite…)

4 Comments

  1. 15/09/2010

    Git is definitely Teh Future.

    At Klean we’re in the process of moving all of our projects over to Git, hosted on the inimitable GitHub. GitHub provides a great dashboard of commits across all projects, and Git’s easy branching will make it much easier for our distributed teams to collaborate.

    Unfortunately I’ll be out of town while JAOO takes place. I would otherwise love to attended the sessions by @mojombo and @chacon. So please take notes! 🙂

    Scott’s Pro Git book is definitely a great ressource, and if you have an iPad, be sure to stick it on there too. He’s also the man behind http://gitref.org/, which is sort of the CliffsNotes version of Pro Git, and a great cheat sheet for getting started with Git. Oh, and http://whygitisbetterthanx.com/ which is great for convincing skeptics.

    Also, no need to wait for a new project to start using Git. The git-svn interface makes it easy to push and pull from Subversion repositories while using Git locally. It can also be used to permanently convert an SVN project to Git, but svn2git is even better for that.

    If you want to explore Mercurial before you choose sides or take the plunge, I’ve heard good things about Joel Spolsky’s http://hginit.com/.

    Bottom line: Distributed version control is great for lots of things, including offline hacking on a beach in Thailand 🙂

  2. 16/09/2010

    Wow – thank you for that great collection of links Dan. Now I have a few months worth of material to look into!!

    Sorry to hear that you can’t make it to JAOO. I will try to take as many notes as I can :-). I hope to cover the JAOO conference extensively here on this blog and on version2.dk.

  3. Erwin Mueller
    16/09/2010

    Because all my existing projects are in SVN and migrating between two such different systems would probably be unwise/a pain I am saving my practical experience with Git for my next project.

    It is not. Just use the git-svn tool to clone a SVN project and you can use all the other git tools on it.
    http://flavio.castelli.name/howto_use_git_with_svn

  4. […] was (as I previously mentioned) at a talk by Tom Preston-Werner a few weeks ago at JAOO about Github and Git. He is a really great […]

Leave a Reply

WordPress Appliance - Powered by TurnKey Linux