GIT by itself is an excellent tool, its version control done right, with awesome branching and tagging capabilities that allows you to make a workflow that your whole team can use. Check out my post on the reasons why we switched from SVN to GIT and haven't looked back. Unfortunately with all the great features that GIT brings there is a bit of a downside, how do you keep track of your working HEAD and those branches?
With years of development experience you learn what’s important to your overall workflow. I mean if there were no IDE’s I could survive with a basic text editor, if there was no decent databases interfaces I could survive in command line and if there were no Apple Mac’s I could even survive on Windows but I couldn’t survive very long without version control. Version control is the first and last thing I check when developing a new feature or making bug fixes, in fact my whole workflow revolves around it.
I’m not here to convince you that you should be using some kind of version control, there’s really no argument for not using it. What I want to do is go through the biggest improvements I found when I switched from SVN (Subversion) to GIT.