A collection of Git extensions to provide high-level repository operations for Vincent Driessen's branching model.
A quick release of version 0.1 has arrived. The main scripts are functional and should be usable under "normal" use.
There have barely been any real-world tests, but I encourage you to start using it actively. Feedback is also very welcome. See the "Please help out" section below, also.
Make sure to validate the modifications to your repo after running any of the
git-flow
commands, before pushing them permanently.
To install git-flow
as a real git
subcommand, run:
$ sudo make install
By default, this will install git-flow
into the default Git exec path
(/usr/libexec/git-core
). To override this setting in case you have installed
Git in another location, use:
$ sudo make GIT_EXEC_PATH=/your/git/exec/path install
Or simply point your PATH
environment variable to your git-flow checkout.
This project is still under development. What is available today is merely its foundation. However, it is functional in its current form and should be usable under normal use. (Don't try to create multiple release branches next to each other and stuff like that, yet.)
Feedback and suggestions are very welcome and I encourage you to use the Issues list on Github to provide that feedback.
Feel free to fork this repo and to commit your additions.
-
To initialize a new repo with the basic branch structure, instead of using
git init
, use:git flow init
-
To start a new feature branch, use:
git flow start feature <name> [<base>] git flow start feature foo-support
base
isdevelop
by default. -
To finish this feature and have it merged into
develop
, use:git flow finish feature <name> git flow finish feature foo-support
-
To start a new release branch for 2.0, based on the 1.1 production release, use:
git flow start release <release> git flow start release 2.0
-
To finish the release branch (i.e. to make an actual production release), use:
git flow finish release <release> git flow finish release 2.0
-
To start a new hotfix branch for 2.1, based on the 2.0 production release, use:
git flow start hotfix <release> [<base-release>] git flow start hotfix 2.1 2.0
-
To finish the hotfix branch, use:
git flow finish hotfix <release> git flow finish hotfix 2.1