Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Git extensions to provide high-level repository operations for Vincent Driessen's branching model.
Tree: a7d4527ff3

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.



A collection of Git extensions to provide high-level repository operations for Vincent Driessen's branching model.

Release 0.1

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.

Installing git-flow

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.

Please help out

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.

Example uses:

  • 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 is develop 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
Something went wrong with that request. Please try again.