<p><span class="caps">VCS</span> are a must for my projects. I need to be able to get old versions or have a place where I can easily sync the project with some friends. Until now I have been using subversion that fits my needs, but everyone is saying that &#8220;git&#8221;: is so cool and everyone is migrating their repositories to git. I&#8217;m not the guy to follow the flock, so I took the change in helping <a href="nunojob.wordpress.com">Nuno</a> on <a href="http://gitorious.org/projects/online-testing-system">his project</a> to try out git. I simply did one <a href="http://gitorious.org/projects/online-testing-system/repos/mainline/blobs/master/public/javascripts/countdown.js">countdown snippet</a> to add to a form, you may use it anywhere you want, just keep in mind it depends on <a href="http://www.prototypejs.org/">Prototype</a>.</p>

<p>While <span class="caps">SVN</span> comes with OS X, git doesn&#8217;t, so I recomend using <a href="http://metastatic.org/text/Concern/2007/09/15/new-git-package-for-os-x/">this installer</a> to get git going on. Works on both Tiger and Leopard.</p>

<p>I later found out of a bundle to textmate (since I&#8217;m an avid user of SVNmate) <a href="http://gitorious.org/projects/git-tmbundle">here</a>. I just couldn&#8217;t find it in the first place, because I use <a href="http://projects.validcode.net/getbundle">GetBundle</a> bundle to manage them, and it wasn&#8217;t in the list (Mercurial and Bazaar are!) so I&#8217;d suggest Tim to submit it to the macromates repository.</p>

<p>There is also a nice interface to see the last changes called <a href="http://github.com/Caged/gitnub/wikis">GitNub</a>. Just remember to upgrade to <a href="http://sourceforge.net/project/showfiles.php?group_id=44114">RubyCocoa 0.13.0</a>.</p>

<p>And now just use the magical workflow:</p>

<div class="code"><pre>git clone *repository url*
*make your changes*
git add .
git commit -a -m "*altera&#231;&#245;es feitas*"
git push</pre></div>

<p>The diference here is that you can commit to your own repository, and then after submit your changes to the main repository. This is great in the point that it let&#8217;s you have your own repository offline (that would have been useful yesterday when ideias3 was offline). It also encourages people to clone the repository and take the project in diferent directions and then merge it all together. This is somehow possible in <span class="caps">SVN</span> using branching and merging, but it is so complicated I have never branched anything in my life!</p>

<p>However I am sticking to <span class="caps">SVN</span> for now. Why? First because I don&#8217;t want to worry about managing my own git server (I do have one server that I could use for this, but most of people won&#8217;t). I know there are some cool stuff out there like <a href="http://github.com/">GitHub</a> or <a href="http://repo.or.cz/">Rep.or.cz</a> or even <a href="http://gitorious.org/">Gitorious</a> but I like to keep some of my stuff private. And Dreamhost has in their control panel, a very simple and sweet <span class="caps">SVN</span> manager. Second, my university workgroup runs different OSes. I am running MacOS X now (but I do use Windows a lot), one mate runs Windows and the other Ubuntu. So we need something that works fine in all those platforms, and I&#8217;ve heard git sucks in Windows. I haven&#8217;t really tested that out, but the major issue is lack of integration with the OS. We don&#8217;t really like to do everything on the command line. I know I&#8217;m weird, but what can you do about it? I love Tortoise-SVN (windows) and SCPlugin (Mac). There is some <span class="caps">KDE</span> cool integration and for Gnome, there is one buggy one, but we&#8217;re using RapidSVN for now. Oh, and Eclipse support too. Git doesn&#8217;t have none of this for now. And I&#8217;ll keep waiting. Then I will migrate to Git.</p>