User Tools

Site Tools


Menu

 ?

About

Basic concepts and guidelines

User Guides

For users

For mappers

Technical

Learn about Dokuwiki

collaborative_development

Collaborative development

Workflow for collaborative development and Version Control using Github

Github flow

For the development of the different modules of the project we will be using the Github Flow, which can be found under https://guides.github.com/introduction/flow/index.html.

This reference should be read and understood by anyone contributing to the development and basically states the following:

  • The master branch will always contain ready-for-production code (Bugfree, tested, approved).
  • In order to develop any new improvement, bugfix or feature, a new branch should be made from the master. Developers will work on that branch, test it locally and in order for it to be merged into the master branch, a Pull Request has to be made.
  • The Pull Request will be reviewed by the repository's Admins and QA Staff, commented, modified and finally approved.

Ticket system

Github's integrated Ticket Tracking system will be used. It allows to define Issues which represent the different Tasks wished to be implemented. For each improvement, Bugfix or Feature an Issue will be opened and assigned to a person of the Team. For the development of each of the Issues a new branch should be created (as specified above) and finally a Pull Request will be opened:

1 Feature/Bugfix/Improvement → 1 Issue → 1 Branch → 1 Pull Request → 1 Merge

Please refer to the guide "Mastering Issues" on the Github site for me information.

Admins and local teams

ODM's Github account features 7 different Teams (from lower to higher permissions):

  • Local Teams: Members of local teams (Cambodia, Laos, Thailand, Myanmar, Vietnam) only have read access. This allows them to branch the master repository, commit changes and open Pull Request.
  • Admins: The task of the Admins is to review and coordinate the different Pull Request madeby the members of the local teams but can also branch repositories and open Pull Requests to be reviewed by other Admins.
  • Owners: Superadministrators
collaborative_development.txt · Last modified: 2020/06/23 15:04 (external edit)