Skip to content

Development Guidelines

Šimon Leitgeb edited this page Oct 1, 2018 · 23 revisions

Git workflow (detailed explanation)

  • two main branches - master and develop - and feature branches
    • master for stable releases only
    • develop for testing and combining new features
  • create branches for new features named either after the feature purpose (e.g. geolocation, vector-tiles) or preferably the issue number (e.g. issue-121) or e.g. hotfix branch.

Example of the workflow:

  1. create a new issue on GitHub to reflect the purpose of the new branch
  2. create a new branch based on develop:
git checkout develop
git checkout -b feature_branch
  1. develop new features and commit the changes (see commit guidelines on how to write a good commit message):
git commit -am "Add new supercool feature"
  1. if other changes happened on develop branch meanwhile, you need to rebase:
git fetch -all
git rebase develop

Do not skip the rebase. It is important to do a rebase first instead of merging to keep the commit history clean.

  1. resolve any conflicts during the rebase and then push the changes:
git push -u origin feature_branch
  1. merge feature_branch into develop
  • either by directly merging:
git checkout develop
git merge feature_branch
  • or by creating a pull request for your branch if you want to have your work approved by others
Clone this wiki locally