2010-01-26 21:18:36 +00:00
|
|
|
git-flow
|
|
|
|
========
|
2010-01-26 21:11:19 +00:00
|
|
|
A collection of Git extensions to provide high-level repository operations
|
2010-02-24 00:43:04 +00:00
|
|
|
for Vincent Driessen's [branching model](http://nvie.com/git-model "original
|
2010-01-20 23:48:44 +00:00
|
|
|
blog post").
|
|
|
|
|
|
|
|
|
2010-01-27 23:33:24 +00:00
|
|
|
> **IMPORTANT NOTE:**
|
|
|
|
> In release 0.2, the order of the arguments has changed to provide a logical
|
|
|
|
> subcommand hierarchy.
|
2010-01-26 11:44:41 +00:00
|
|
|
|
|
|
|
|
2010-01-26 21:11:19 +00:00
|
|
|
Installing git-flow
|
|
|
|
-------------------
|
2010-02-15 19:09:02 +00:00
|
|
|
After downloading the sources from Github, also fetch the submodules:
|
|
|
|
|
|
|
|
$ git submodule init
|
|
|
|
$ git submodule update
|
|
|
|
|
|
|
|
Then, you can install `git-flow`, using:
|
2010-01-20 23:48:44 +00:00
|
|
|
|
2010-01-26 21:11:19 +00:00
|
|
|
$ sudo make install
|
2010-01-26 11:44:41 +00:00
|
|
|
|
2010-03-19 18:27:38 +00:00
|
|
|
By default, git-flow will be installed in /usr/local. To change the prefix
|
|
|
|
where git-flow will be installed, simply specify it explicitly, using:
|
2010-01-26 21:11:19 +00:00
|
|
|
|
2010-03-19 18:27:38 +00:00
|
|
|
$ sudo make prefix=/opt/local install
|
2010-01-26 23:00:09 +00:00
|
|
|
|
|
|
|
Or simply point your `PATH` environment variable to your git-flow checkout
|
|
|
|
directory.
|
2010-01-20 23:48:44 +00:00
|
|
|
|
|
|
|
|
2010-01-26 11:44:41 +00:00
|
|
|
Please help out
|
|
|
|
---------------
|
2010-02-24 00:22:48 +00:00
|
|
|
This project is still under development. Feedback and suggestions are very
|
|
|
|
welcome and I encourage you to use the [Issues
|
|
|
|
list](http://github.com/nvie/gitflow/issues) on Github to provide that
|
2010-01-26 11:44:41 +00:00
|
|
|
feedback.
|
|
|
|
|
2010-04-04 14:11:44 +00:00
|
|
|
Feel free to fork this repo and to commit your additions. For a list of all
|
|
|
|
contributors, please see the [AUTHORS](AUTHORS) file.
|
2010-01-20 23:48:44 +00:00
|
|
|
|
|
|
|
|
2010-04-04 13:52:55 +00:00
|
|
|
License terms
|
|
|
|
-------------
|
|
|
|
git-flow is published under the liberal terms of the BSD License, see the
|
|
|
|
[LICENSE](LICENSE) file. Although the BSD License does not require you to share
|
|
|
|
any modifications you make to the source code, you are very much encouraged and
|
|
|
|
invited to contribute back your modifications to the community, preferably
|
|
|
|
in a Github fork, of course.
|
|
|
|
|
|
|
|
|
2010-02-24 00:22:48 +00:00
|
|
|
Typical usage:
|
|
|
|
--------------
|
|
|
|
|
|
|
|
### Initialization
|
2010-01-20 23:48:44 +00:00
|
|
|
|
2010-02-24 00:22:48 +00:00
|
|
|
To initialize a new repo with the basic branch structure, use:
|
2010-01-26 21:11:19 +00:00
|
|
|
|
2010-02-24 00:22:48 +00:00
|
|
|
git flow init
|
2010-02-22 06:56:04 +00:00
|
|
|
|
2010-02-24 00:22:48 +00:00
|
|
|
This will then interactively prompt you with some questions on which branches
|
|
|
|
you would like to use as development and production branches, and how you
|
|
|
|
would like your prefixes be named. You may simply press Return on any of
|
|
|
|
those questions to accept the (sane) default suggestions.
|
|
|
|
|
|
|
|
|
|
|
|
### Creating feature/release/hotfix/support branches
|
2010-01-26 21:11:19 +00:00
|
|
|
|
2010-01-27 23:33:24 +00:00
|
|
|
* To list/start/finish feature branches, use:
|
2010-01-20 23:48:44 +00:00
|
|
|
|
2010-01-27 23:33:24 +00:00
|
|
|
git flow feature
|
|
|
|
git flow feature start <name> [<base>]
|
|
|
|
git flow feature finish <name>
|
2010-01-20 23:48:44 +00:00
|
|
|
|
2010-02-04 09:31:29 +00:00
|
|
|
For feature branches, the `<base>` arg must be a commit on `develop`.
|
2010-01-27 23:33:24 +00:00
|
|
|
|
|
|
|
* To list/start/finish release branches, use:
|
2010-01-20 23:48:44 +00:00
|
|
|
|
2010-01-28 00:07:20 +00:00
|
|
|
git flow release
|
2010-02-04 09:31:29 +00:00
|
|
|
git flow release start <release> [<base>]
|
2010-01-27 23:33:24 +00:00
|
|
|
git flow release finish <release>
|
2010-01-20 23:48:44 +00:00
|
|
|
|
2010-02-04 09:31:29 +00:00
|
|
|
For release branches, the `<base>` arg must be a commit on `develop`.
|
|
|
|
|
2010-01-27 23:33:24 +00:00
|
|
|
* To list/start/finish hotfix branches, use:
|
2010-01-20 23:48:44 +00:00
|
|
|
|
2010-01-28 00:07:20 +00:00
|
|
|
git flow hotfix
|
2010-02-04 09:31:29 +00:00
|
|
|
git flow hotfix start <release> [<base>]
|
2010-01-27 23:33:24 +00:00
|
|
|
git flow hotfix finish <release>
|
2010-02-04 09:31:29 +00:00
|
|
|
|
|
|
|
For hotfix branches, the `<base>` arg must be a commit on `master`.
|
2010-01-27 23:33:24 +00:00
|
|
|
|
|
|
|
* To list/start support branches, use:
|
2010-01-20 23:48:44 +00:00
|
|
|
|
2010-01-27 23:33:24 +00:00
|
|
|
git flow support
|
2010-02-04 09:31:29 +00:00
|
|
|
git flow support start <release> <base>
|
|
|
|
|
|
|
|
For support branches, the `<base>` arg must be a commit on `master`.
|
2010-01-20 23:48:44 +00:00
|
|
|
|