Gitflow notes
Guidelines for setting up and managing a repository with Gitflow:
Initialization
Initialize repository with $ git flow init
.
Keep default branch names. master
for production releases, develop
for development, feature/
for feature branches, bugfix/
for bugfix branches, release/
for release branches, hotfix/
for hotfix branches and support/
for support branches.
Use v
as the version tag prefix.
For this jekyll blog use branch names post/
for feature branches (to be used for posts) and publish/
for release branches (to be used for publishing).
Do not include workspace settings files such as code-workspace
in the repository but include sync scripts such as push.sh
and pull.sh
.
Keep a version string in a file thats included in the repository itself (usually in a header file).
Development
Commit routine development commits to the develop branch.
Feature
Start and finish feature branches using the gitflow feature in gitkraken.
Release
Start the release using the gitflow feature in gitkraken.
when prompted type in release version x.y.z
(do not use prefixes)
Use the version numbering scheme below.
Prepare the release by committing any release specific changes to the release branch.
The final commit in the release branch must be updating the version string to match the release version specified in the previous step.
Finish release.
Fist commit in the development branch after a release should be incrementing the version string x.y.z+1
and re-append the -dev
tag.
A typical release transaction should look like this:
version numbering scheme:
- develop - 0.0.1-dev
- release - 0.1.0
- develop - 0.1.1-dev
- develop - 0.1.2-dev
- develop - 0.1.3-dev
- release - 0.2.0
- develop - 0.2.1-dev
- develop - 0.2.2-dev
- develop - 0.2.3-dev
Join the discussion here.
Comments
Join the discussion here