Git Flow – Concurrent Version on Acid
I recently changed from using svn to using git as my concurrent version system, the migration was far easier than my migration from rcs to cvs and on to svn. I am a great believer in the use of branches to make the development experience easier. Many people cite issues with merging and overall consistency of the development tree as reasons why branching does not work for them. Usually I tell them they are doing it wrong, and explain how it could be done to make their lives a whole lot easier.
Git flow is an extension for git which makes the maintenance of branches a whole lot easier. The functionality allows you to set up master, development and, feature and hotfix branches and gives you the tools you need to easily switch between those branches. For the detractors of branching it teaches them an effective way to create and maintain their branches, making it easier to maintain their code than before.
Original, Documentation, Code