Git is for Playing
I’ve been using Git for close to a year now, and I cannot remember what I did before it. I literally forget the process involved in doing certain things with subversion, cvs, and (shudder) vss. At first it was a bit of a struggle sure. The gui tools are somewhat lacking, but what is there is decent enough. I like Gitx a lot for what it does, but mainly I use it for partial commits, and visualization of a source tree. Being from windows land, and having used tortoise svn (a very very nice subversion client), it took me a bit to master the intricacies of the git command line interface. I still get into a little trouble from time to time. But it is all so very much worth it!
git branch my_new_toy
Seriously? That’s it? And it took less than a second? Why would I not branch ALL THE TIME. Wanna try something out? Branch it! Unsure that you’ll finish a feature in time for iteration end? Branch it! My pet project has 5 branches going right, all for little experiments and features that I’ve been slowly working on.
Feature branches have changed my workflow entirely. Every new feature I build, I create a branch for it. If it takes a while I merge from master to make sure I’m up to date.
git merge master
If we balk at the feature, or I want to go a different route with it, I can chuck it. If all goes which (which of course it always does), I merge it to master or whatever branch represents the latest greatest code.
git checkout master git merge my_feature_branch
Once you get the hang of it you realize how simple and powerful it is. Every day I use it I’m continually amazed and thankful of how well it works and how drastically it improves my teams workflow.










