http://nvie.com/posts/a-successful-git-branching-model/ Published: January 05, 2010 In this post I present the development model that I’ve introduced for all of my projects (both at work and private) about a year ago, and which has turned out to be very successful. I’ve been meaning to write about it for a while now, but I’ve never really found the time to do so thoroughly, until now.
If you have started to feel comfortable using git and have begun to acknowledge its power, but you feel like you're missing out on some of the importance of the advanced features, this post is for you. Before I jump into the use cases and commands, I'd like to explain a little motivation. As you should know if you've read enough about git, one of the many interesting things about the design is that a commit in git is just a snapshot of the current repository. Yes, the entire repository! Of course, due to algorithmic awesome-tude, this is compressed against time, so it's not horribly inefficient to do. Git 102 - Adventurous
Lately I’ve been acting as the unofficial Git consultant for Skribit , usually in response to @Stammy saying something on Twitter along the lines of “Hey, git just did something totally nonintuitive and now I can’t figure out what to do next.” I’ve been using Git long enough to know the answer, usually, or at least to be able to figure it out, plus I still remember how people used to SVN think, which helps. I think I’ve mentioned before how much I love Git. I’ve been a version control geek for a really long time: I remember getting way too excited about a feature that was like ‘git cherry-pick’ in some proprietary VCS we evaluated in 2000 or 2001. I still say that Darcs is the one I wish we had settled on, but I’ve grown to love Git over the past year or so, especially with GitHub making some of the rough spots so much easier. My Git Workflow
Git Quick Reference