I've started an Open Source project on sourceforge, but I'm not to happy about the performance of their subversion server. It even as been down for a while.

After listening to Linus Torvalds on git (great talk by the way),  I thought I should give a shot at distributed source management.

I have 3 choices :

  • subversion :

    • pros:

      • I know it, using it every day at work.

      • the integration with my IDE of choice (eclipse) is fine.

      • a lot of free hosting solution for an opensource project (I should swith to google-code since I'm not happy with sourceforge

    • cons:

      • it's a centralized source management system (AKA evil).

      • merging is awful

  • git :

    • pros :

      • decentralized source management system.

      • tracks contents instead of files.

      • github seems to be a very nice place for a project to leave. (very hip this days)

    • cons :

      • I'm not so happy with the UI, I've seen so far :  eclipse integration is not so great.

  • mercurial :

    • pros:

      • decentralized source management system.

      • the UIs seems more mature, particularly the eclipse integration.

    • cons:

      • What about free hosting?

I really don't know which one to choose. Since I will be a sole developper on this project for a while I could go with subversion and switch to git with the tools are ready for my level of lazyness. I seems to be the easyest way to go, but going with distributed source management, it's what's the cool kids do.

I think I will go with git on github for a while to see if I can work with git. So, my next action should be find a good tutorial about using git. I will probably start by Insider Guide to GitHub, followed by the Guides provided by github. If you have any link to suggest please do so.