ChangeLog

v1.6.0 - in progress

New:

  • git hf support

    Support branches!! :)

    A support branch is branched off master to be a long-lived branch for maintenance. You can create features, releases and hotfixes from a support branch; when you finish them, they get merged back into the support branch (__not__ into develop or master).

    For example, you might do git hf support start 1.6.x 1.6.0 to create the branch support/1.6.x, branched from the tag 1.6.0. This allows you to do maintenance and small changes for v1.6.1, 1.6.2 etc etc whilst your develop branch marches onwards to v1.7 and beyond.

  • git hf feature checkout

    I’ve completely overhauled the git hf feature checkout command; the old version wasn’t helpful enough.

    Credit to bmomberger-reciprocity and jhofmeyr for this.

  • git hf feature list

    This has been updated to now also show feature branches at origin.

  • git hf feature rename, git hf hotfix rename and git hf release rename

    I’ve added three new commands for renaming feature, hotfix and release branches. They’re a bit easier than having to remember the individual commands for dealing with local and remote branch renames.

  • git hf hotfix finish -M and git hf release finish -M

    The new -M switch will use the branch name (which is normally a version number) as the commit message when the branch is merged.

  • Initial support for GitHub Enterprise

    If you’re using GitHub Enterprise, set the environment variable GITHUB_ENTERPRISE_HOST to the hostname of your copy of GitHub Enterprise.

    Many thanks to bahulneel for this feature.

  • git hf init now detects ‘origin’ and requires at least one remote

    When you run git hf init, we now look at the list of remotes available in the repository to work out where to push to. This is required for some software package managers which can clone Git repositories but which don’t use ‘origin’ for the name of the remote.

    As part of this, running git hf init before you’ve added at least one remote is now a fatal error.

    Many thanks to fvalverd for contributing to this feature.

Fixes:

  • git hf feature track is really gone this time

    The command was dropped in an earlier release, but was still listed in the built-in help. Now removed. Many thanks to jtsoi for this fix.

  • git hf feature submit: delete the pull-request file after submission

    Many thanks to huafu for this fix.

v1.5.2 - 29th July 2013

This release is a bug-fix release.

Fixes:

  • git hf feature start: set up the remote tracking branch correctly
  • git hf update: go back to branch we started on after updating all the branches

v1.5.1 - 24th March 2013

So many people turned out to be using v1.5.0 straight from the develop branch that it seemed best to bump the version to v1.5.1 before final release. Thank you to everyone for the feedback - keep it coming!

New:

  • install.sh: now supports INSTALL_INTO environment variable if you want to change the install location (the default is /usr/local/bin)
  • git hf pull: bring down and merge changes from the remote master, develop and current branches
  • git hf push: a more generic (and long-term) replacement for the ‘feature publish’ et al commands
  • git hf feature push -F: new –force feature which will overwrite origin’s copy of the branch with your copy (thanks to bsedat for the patch)
  • git hf update: new –no-prune flag to disable ‘git fetch –prune’

Fixed:

  • install.sh does not require sudo/root if target folder is writeable (thanks to mborsuk for the patch) - might help folks trying to install using Cygwin
  • git hf init: if this command creates the ‘develop’ branch, it now pushes that branch back up to origin automatically
  • git hf hotfix start: fetches latest refs from origin before attempting sanity checks; should keep things more consistent
  • git hf release start: fetches latest refs from origin before attempting sanity checks; should keep things more consistent
  • git hf feature cancel: deletes the local branch even if it contains unmerged changes (thanks to mheap for the patch)
  • git hf feature finish: pull down latest changes from origin; avoids manual ‘git hf update’ first
  • git hf feature finish: clearer message when a feature has not yet been merged via a GitHub pull request
  • git hf feature submit: now supports the VISUAL and EDITOR environment variables (thanks to mbrace for the patch)
  • git hf release finish: pull down latest changes from origin; avoids manual ‘git hf update’ first
  • git hf hotfix finish: pull down latest changes from origin; avoids manual ‘git hf update’ first
  • git hf (feature|hotfix|release) start: refactored to increase amount of shared code
  • git hf update: does not switch to master or develop branch if there are no changes to merge in (speed improvement!)
  • git hf update: does not push to origin if there are no changes to merge in (speed improvement!)
  • merge conflicts: refactored to simplify, standardise the behaviour across all commands
  • co-existing with gitflow: you can now install the original gitflow tools and the hubflow tools alongside each other with no file conflicts
  • various portability improvements for OS X (thanks to mbrace for the patches)
  • Improved README file (thanks to j0k3r for the patch)
  • Fixed the poster to recommend the new commands added in v1.5

Dropped:

We’ve removed the following features, as they don’t fit into our core idea of Hubflow as a workflow that is focused on interacting primarily with GitHub:

  • git hf feature pull: is now an alias for git hf pull
  • git hf feature push: is now an alias for git hf push
  • git hf feature track: command deleted
  • git hf hotfix pull: is now an alias for git hf pull
  • git hf hotfix push: is now an alias for git hf push
  • git hf hotfix track: command deleted
  • git hf release pull: is now an alias for git hf pull
  • git hf release push: is now an alias for git hf push
  • git hf release track: command deleted

v1.4.2 - 19th February 2013

Fixed:

  • git hf release pull should now work (was incomplete) (thanks to neonal)
  • git hf release push should now work (was incomplete) (thanks to neonal)
  • Bug fix for incompatibility with Git v1.7.10.2 (Apple Git-33)

v1.4.1 - 12th October 2012

Fixed:

  • git hf init now creates a master branch if the repo currently does not have one

v1.4.0 - 3rd October 2012

New:

  • git hf hotfix cancel: deletes a hotfix branch that is in progress.
  • git hf feature cancel: deletes a feature branch that is in progress.
  • git hf feature finish will abort if the feature hasn’t yet been merged via a pull request. You can override this using the -f (force) flag.

Fixed:

  • git hf hotfix finish now deletes the remote hotfix branch first, to avoid warnings about partially merged branches.
  • git hf feature pull is now as verbose as all of the other commands, so that you can see what is happening
  • git hf feature pull now dies correctly if there’s a problem talking to GitHub
  • git hf release cancel no longer merges into the develop branch by default.

Removed:

  • git hf feature publish: not needed, use git hf feature push instead.

Reader Comments And Feedback

Reader Comments And Feedback

Reader Comments And Feedback