Skip to content

Instantly share code, notes, and snippets.

@ribbon-abku
Last active September 24, 2019 08:54
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ribbon-abku/10d3fc1cff5c35a2df401196678e258a to your computer and use it in GitHub Desktop.
Save ribbon-abku/10d3fc1cff5c35a2df401196678e258a to your computer and use it in GitHub Desktop.
GitFlow based branching strategy for your project repository

Branching strategy

We are following GitFlow as the branching strategy and for release management. You can install gitflow extension for your current git CLI from here.

The central repo holds two main branches with an infinite lifetime:

  • master
  • develop

The master branch at origin should be familiar to every Git user. Parallel to the master branch, another branch exists called develop.

We consider origin/master to be the main branch where the source code of HEAD always reflects a production-ready state.

We consider origin/develop to be the main branch where the source code of HEAD always reflects a state with the latest delivered development changes for the next release.

Supporting branches

Next to the main branches master and develop, our development model uses a variety of supporting branches to aid parallel development between team members.

The different types of branches we may use are:

  • Feature branches
  • Release branches
  • Hotfix branches

Contributing

Fork the repository. Then, run:

git clone --recursive git@github.com:<username>/gitflow.git
cd <your repository>
git branch master origin/master
git flow init -d
git checkout develop
git flow feature start <your feature>

Then, do work and commit your changes. When your feature is completed, raise the pull-request against develop.

To know more about GitFlow, please refer

Coding conventions

Contributors should strictly follow these conventions:

  1. File names are in lowercase
  2. Id allocated to any html tags are in lowercase
  3. Variable names are in camelCase
  4. Class names are in PascalCase
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment