gitflow is a branching model for git created by Vincent Driessen. It forms an elegant mental model that is easy to comprehend and allows team members to develop a shared understanding of branching and releasing processes.
Detailed information can be found on A successful git branching model.
The Git Tower team wrote another detailed description on how to use gitflow with a GUI tool.
Basic usage and effect of git-flow operations on the command line:
https://danielkummer.github.io/git-flow-cheatsheet/
In a nutshell:
master
holds only releases (and bugfixes)develop
holds the latest version under development
feature/xxx
develop
after the feature is finished and testedgit pull develop
)
develop
branch into your feature branch before finishing it. That way, you can solve any conflicts in your local workspace without breaking anything for the rest of the team.