Update git module to handle branches better
This drops the branch option. The version option is overloaded to mean either a sha1, branch, or tag. This also adds the option 'remote' which defaults to 'origin'. clone() was simplified by removing the checkout operation. That happens later when switch_version() is called. Added the methods get_branches(), is_remote_branch(), and is_local_branch(). get_branches() returns an array listing all of the branches for the git repository. is_remote_branch() checks whether the arguments supplied correspond to a remote branch. Similarly, is_local_branch() checks for a local branch. The pull() method now checks to see if it is on the desired branch. If not, it checks out the requested branch and then does a pull. This should keep issue #604 still fixed. switch_version(), formerly switchver(), looks to see if it is checking out a branch. If a branch, it checks it out with the --track option. This type of checkout was in pull() before. Updated pull, clone, and switch_version to return (rc, out, err).
Showing
Please
register
or
sign in
to comment