Skip to content

Contributing guidelines

Gijs de Jong edited this page Jan 20, 2023 · 1 revision

Feature branches

At DNT we use feature branches, feature branches are branches that are used to develop and test new features before they are merged into the main branch of a project. This allows multiple developers to work on different features simultaneously without disrupting the main codebase.

Branch naming convention

When creating a new branch there's specific naming scheme we adhere to, your branch should be named like this:

The first letter of your first name, followed by your last name, and then a brief description of the feature or work being done on the branch.

Examples:

  • tstark/localisation (Tony Stark)
  • emusk/bugfix-communication (Elon Musk)
  • mverstappen/ball-detection (Max Verstappen)

If you're assigned a ticket on the kanban board, it is preferred to use ticket number as branch name

Examples:

  • tstark/LOC-12 (Tony Stark)
  • emusk/COM-69 (Elon Musk)
  • mverstappen/BAL-21 (Max Verstappen)

Pull requests

Once your feature is implemented and tested, you'll want to open a pull request (PR) to merge your new code into the main branch. This pull request will then undergo a code review and changes can be requested, which you'll then implement on your branch. Once it's approved the PR will be merged 🚀

PR Title conventions

When opening a new PR it will ask you for a title of the PR, this title should be using the following format:

[TICKET NUMBER] [SHORT DESCRIPTION OF CHANGES]

Examples:

LOC-12 Implement SLAM3D based localisation
COM-69 Fix a bug that would prevent free speech
BAL-21 Optimise ball selection algorithm using previous location data

PR Description requirements

For the description of the PR there will usually be a template automatically applied when creating the PR. This template will contain the specific requirements for the project you're working on. The PR description should explain what change is being made and any other information relevant to the PR.

Clone this wiki locally