Skip to content

Branch Managment

Raphael_m edited this page May 22, 2025 · 4 revisions

main

purpose :

production branch, represent the latest stable version of the project.

workflow :

Every change to main should come with a version release.

commit policy :

No commits should ever be made on main.

CI/CD :

  • Integration test => blocking
  • Performance test => blocking
  • Security => blocking

dev

purpose :

Development branch, meant as a base to branch off for new feature development.

workflow :

When the branch is stable and all the features of a milestone are implemented a merge on main should be done.

commit policy :

Commits on dev should be avoided as much as possible prefer making a feature or fix branch instead.

CI/CD :

  • Coding style => blocking
  • Compilation => blocking
  • Security => not blocking

feature / fix

purpose :

used to create or fix a feature.

workflow :

a branch should only contain one feature or fix, don't hesitate to create a lot of branches.

commit policy :

commits should follow the git karma norm

CI/CD :

  • Coding style => not blocking

hotfix

purpose :

Used to patch a breaking bug or security issue on main.

workflow :

When the fix is done, main should be merged into dev. This is the only time when main in merged into another branch.

commit policy :

commits should follow the git karma norm

CI/CD (manual trigger before merging with main):

  • Coding style
  • Compilation
  • Security

Branch naming convention

when creating a new branch the name should be as follow :
<branch_type>/<subject>/<issue number>

Clone this wiki locally