Skip to content
This repository

Jul 09, 2012

  1. Vincent Driessen

    Merge branch 'develop' into squash-option

    authored July 09, 2012
  2. Vincent Driessen

    Cleanup (mostly whitespace issues).

    authored July 09, 2012
  3. Vincent Driessen

    Merge pull request #211 from pcragone/develop

    Added 'init()' function to git-flow-{feature,release,hotfix,support}
    authored July 09, 2012

Feb 13, 2012

  1. Vincent Driessen

    Fix indenting.

    authored February 13, 2012

Nov 23, 2011

  1. Vincent Driessen

    Fix wording.

    authored November 23, 2011

May 16, 2011

  1. Vincent Driessen

    Update usage docs and changelog.

    authored May 16, 2011
  2. Vincent Driessen

    Implement git flow feature finish without a branch name to finish the

    current branch, if any.
    
    This fixes #127.
    authored May 16, 2011

Feb 03, 2011

  1. Vincent Driessen

    Fix: "eval set" called in the wrong context.

    This is the real fix for the incorrect fix that I reverted in the
    previous commit.  parse_cmdline was used to DRY up the source, but this
    introduced a bug because the "eval set" line changes the positional
    parameters semantics, but does it in the wrong context, so the calling
    function never receives the changes.
    
    This closes at least the GitHub issues #54 and #86.
    authored February 03, 2011
  2. Vincent Driessen

    Don't just take the last argument, take the first.

    This patch was originally contributed as a workaround for the cases
    where there were flags that took the first argument position.  This fix
    was just plain wrong and this commit reverts it.
    authored February 03, 2011

Oct 08, 2010

  1. Vincent Driessen

    Manually select the last argument.

    This implementation does not rely on Bash-specific functionality.
    authored October 08, 2010

Oct 05, 2010

  1. Vincent Driessen

    Tidy up a bit.

    authored October 05, 2010

Aug 21, 2010

  1. Vincent Driessen

    Bugfix to avoid errors due to Git subcommands returning ANSI color ou…

    …tput.
    authored August 21, 2010

Jul 21, 2010

  1. Vincent Driessen

    Fix whitespace issues.

    authored July 21, 2010

Jul 09, 2010

  1. Vincent Driessen

    Added new experimental `feature pull` subcommand.

    This new subcommand lets you easily work together with peers on features. It's
    intended to be extremely simple to pull changes from your co-developers.
    
    This implementation may also be ported to release and/or hotfix branches in the
    near future, if we agree on the final implementation details.
    
    Example use
    ===========
    Sharing development of feature branches goes as follows:
    
    Suppose Alice and Bob are both developers on project Foo.  They have local
    repos that are up-to-date with `origin`.  Then, Alice starts working on some
    feature:
    
       alice$ git flow feature start newprotocol
       Switched to a new branch 'feature/newprotocol'
       ...
    
    Then, she hacks on the new feature, commits as desired, until the feature's
    finished.  She then likes Bob to code-review the feature, so she asks Bob to
    pull from her.  (Assuming Bob has a Git remote defined, pointing to Alice's
    repo.)
    
        bob$ git remote
        alice
    
        bob$ git branch
        * develop
          feature/reader
          master
    
        bob$ git flow feature pull alice newprotocol
        Created local branch feature/newprotocol based on alice's feature/newprotocol.
    
        bob$ git branch
          develop
        * feature/newprotocol
          feature/reader
          master
    
    Since the new feature branch is already checked out, Bob can immediately start
    peer reviewing the code.  He changes the code as desired and commits each
    comment individually, so Alice can later read the Git commit log as the peer
    review log.
    
        bob$ git commit
        [feature/newprotocol 1f6fa95] Forgot return statement.
         1 files changed, 1 insertions(+), 1 deletions(-)
        ...
    
    When he's finished, he tells Alice he's done.  Alice then, in turn pulls in the
    peer review commits from Bob, using the same command Bob used to fetch the
    changes initially.  (Because feature/newprotocol is still her current branch,
    she may omit the explicit 'newprotocols' argument.)
    
        alice$ git flow feature pull bob
        Pulled bob's changes into feature/newprotocol.
    
    If she disagrees with Bob's comments, she may again commit changes and ask Bob
    to do the same again.  This leads to a continuous pull cycle until both parties
    agree on the final implementation.  Then, Alice (as the feature owner) finished
    the feature.  Bob may discard his feature branch.
    authored July 09, 2010
  2. Vincent Driessen

    Change the URL of the original blog post.

    authored July 09, 2010
  3. Vincent Driessen

    Forgot to update usage text.

    authored July 09, 2010
  4. Vincent Driessen

    Allow new feature branches in dirty working trees.

    Before this change, `git-flow feature start` would nag about the working
    tree being dirty and disallow continuation. Then, there were two
    alternatives:
    
    - stash away your changes manually, create the new branch, restore the
      stash; or
    - use `git-flow feature start -f` to force creation
    
    There is absolutely no good reason for git-flow to forbid this creation,
    as git allows it already.  Therefore, the -f behaviour is now the default,
    without an option to turn that behaviour off.  Git takes care of unsafe
    situations again now.
    authored July 09, 2010

Jul 08, 2010

  1. Vincent Driessen

    Force deletion of the feature branch after finish.

    This fix also works when feature branches are created manually, based on remote
    (i.e. other developers) feature branches, to work on features together.
    
    `git branch -d` won't remove local feature branches that are set up to track
    remote branches, `-D` will.
    
    Fixes ticket #31.
    authored July 08, 2010

May 27, 2010

  1. Vincent Driessen

    Added alias 'co' for new 'checkout' subcommand.

    authored May 27, 2010
  2. Vincent Driessen

    Added 'feature checkout' subcommand.

    This can be used as a shortcut to "git checkout feature/full-feature-name".
    Feature branch prefix names may be used for convenience.
    authored May 27, 2010

Apr 04, 2010

  1. Vincent Driessen

    Fix: unnecessary requirement of origin when creating a new feature br…

    …anch.
    
    Only test if local branch is behind origin if origin exists.
    authored April 04, 2010
  2. Vincent Driessen

    Added inline license terms to all source files.

    authored April 04, 2010

Feb 24, 2010

  1. Vincent Driessen

    Document all available flags in all of the subcommand synopsis texts.

    authored February 24, 2010

Feb 22, 2010

  1. Vincent Driessen

    Removed the --squash option until it's fully implemented.

    authored February 22, 2010
  2. Vincent Driessen

    Better naming of common functions categorizing them into common,

    git specific and git-flow specific functions:
    
    gitflow_current_branch             -> git_current_branch
    gitflow_is_branch_merged_into      -> git_is_branch_merged_into
    gitflow_local_branch_exists        -> git_local_branch_exists
    gitflow_local_branches             -> git_local_branches
    gitflow_remote_branches            -> git_remote_branches
    gitflow_require_branch             -> require_branch
    gitflow_require_branch_absent      -> require_branch_absent
    gitflow_require_branches_equal     -> require_branches_equal
    gitflow_require_clean_working_tree -> require_clean_working_tree
    gitflow_require_git_repo           -> require_git_repo
    gitflow_require_git_repo           -> require_git_repo
    gitflow_require_initialized        -> require_gitflow_initialized
    gitflow_require_initialized        -> require_gitflow_initialized
    gitflow_require_local_branch       -> require_local_branch
    gitflow_require_remote_branch      -> require_remote_branch
    gitflow_require_tag_absent         -> require_tag_absent
    gitflow_tag_exists                 -> git_tag_exists
    gitflow_test_branches_equal        -> git_compare_branches
    gitflow_test_clean_working_tree    -> git_is_clean_working_tree
    resolve_nameprefix                 -> gitflow_resolve_nameprefix
    authored February 21, 2010

Feb 20, 2010

  1. Vincent Driessen

    Added function gitflow_require_initialized(), to assert that the gitflow

    variables are all set (they need to be set explicitly once).
    authored February 20, 2010
  2. Vincent Driessen

    Changed GIT_DIR variable into DOT_GIT_DIR, since Git uses it and chok…

    …es if
    
    the variable is set explicitly by gitflow.
    authored February 19, 2010
  3. Vincent Driessen

    Rewrite the way git-flow initialized its variables in git-flow and as…

    …sumed
    
    existence of a valid git repo. Instead, functions gitflow_load_settings()
    and gitflow_require_git_repo() have been added that can be called in each
    submodule that requires such.
    
    Specifically, git-flow init does NOT use this.
    authored February 16, 2010
  4. Vincent Driessen

    Don't store remote and local branch names in shell variables, but query

    them live using git commands instead. This avoids git commands being
    issued by subcommands that do not necessarily require an existing Git repo
    to be initialized (i.e. git-flow init).
    authored February 16, 2010

Feb 15, 2010

  1. Vincent Driessen

    Replaced all 'typeset' and 'typeset -i' calls by 'local', as adviced on:

        https://wiki.ubuntu.com/DashAsBinSh
    
    Went back from making use of the specific Bourne shell construct 'typeset
    -i' for easy integer calculations (typeset -i foo=123; foo=foo+456;) to a
    more compatible way (local foo=123; foo=$((foo+456)); )
    
    The 'typeset -f' call has been replaced by a call to 'type', effectively
    not testing for existence of a declared *function*, but testing for
    existence of a declared *something*. You have to sacrifice sometimes in
    order to be more portable.
    authored February 15, 2010

Feb 09, 2010

  1. Vincent Driessen

    Quote all variables in function/program arguments.

    authored February 10, 2010
  2. Vincent Driessen

    Do not quote variable assignments.

    authored February 10, 2010

Feb 07, 2010

  1. Vincent Driessen

    Replaced all old-style flag variables by shFlags-style flag variables.

    authored February 07, 2010

Feb 06, 2010

  1. Vincent Driessen

    Tidying up:

    - Move resolve_name_by_prefix() from git-flow-feature to gitflow-common
    - Rename require_name() to require_name_arg()
    - Refactor expanding of nameprefixes
    authored February 06, 2010
  2. Vincent Driessen

    Tidy up:

    - Lower-cased all local variable names
    - Explicitly typeset all local variable names, to prevent issues with
      setting/overriding variables in the global namespace.
    - Explicitly typed integer types as integer (typeset -i) to enable simpler
      arithmetic calculations on them.
    authored February 06, 2010
Something went wrong with that request. Please try again.