We're about to switch to using GitFlow patterns for the Datastage development
repository. This means that the "master" branch will *always* contain
production-ready code. Development updates are gathered on a "develop" branch.
Below are notes of git incantations for creating and merging the branches. Most
of these notes are verbatim from the link below.
See:
*
http://nvie.com/posts/a-successful-git-branching-model/
#g
--
# Create the develop branch
See:
*
http://www.linux-pages.com/2011/05/how-to-create-a-brand-new-git-tracking-branch-from-scratch/
git push origin master:develop
git branch --track develop origin/develop
Also, to delete remote branch:
$ git push origin --delete <branchName>
# Creating a feature branch
When starting work on a new feature, branch off from the develop branch.
$ git checkout -b myfeature develop
Switched to a new branch "myfeature"
Also:
$ git push origin HEAD
Pushes to same-name branch at origin repo
# Incorporating a finished feature on develop
Finished features may be merged into the develop branch definitely add them to
the upcoming release:
$ git checkout develop
Switched to branch 'develop'
$ git merge --no-ff myfeature
Updating ea1b82a..05e9557
(Summary of changes)
$ git branch -d myfeature
Deleted branch myfeature (was 05e9557).
$ git push origin develop
The --no-ff flag causes the merge to always create a new commit object, even if
the merge could be performed with a fast-forward.