An upgrade of gitflow

Last week, I silently tagged gitflow 0.2. The most important changes since 0.1 are:

  • Order of arguments changed to have a more “gitish” subcommand structure. For example, you now say:
    git flow feature start myfeature
  • Better initializer. git flow init now prompts interactively to set up a gitflow enabled repo.
  • Added a command to list all feature/release/hotfix/support branches, e.g.:
    git flow feature list
  • Made all merge/rebase operations failsafe, providing a non-destructive workflow in case of merge conflicts.
  • Easy diff’ing of all changes on a specific (or the current) feature branch:
    git flow feature diff [feature]
  • Add support for feature branch rebasing:
    git flow feature rebase
  • Some subactions now take name prefixes as their arguments, for convenience. For example, if you have feature branches called “experimental”, “refactoring” and “feature-X”, you could say:
    git flow feature finish ref

    And gitflow will know you mean the “refactoring” feature branch.

    These actions are: finish, diff and rebase.

  • Much better overall sanity checking.
  • Better portability (POSIX compliant code)
  • Better (more portable) flag parsing using Kate Ward’s shFlags.
  • Improved installer. To install git flow as a first-class Git subcommand, simply type:
    sudo make install
  • Major and minor bug fixes.

That’s all for now.

3 Comments

TemoonMarch 4th, 2010 at 15:01

Great job!

XerossMay 15th, 2010 at 11:38

Nice work, however as I’m still a windows user the Makefile won’t work, but I’ll try and see if I can make it work with msysgit.

XerossMay 15th, 2010 at 12:46

I just tried to see if it works but whenever I try to use a subcommand I get the error
D:\CLI\bin\gitflow/git-flow: line 49: FLAGS: command not found

I think it runs under cygwin bash, what am I missing here, seems it doesn’t pick up the env vars properly.

Leave a comment

Your comment