5. Development flow¶
Here is an overview of the development flow used in the Infrabase project.
Current/latest version of the framework is available in the
mainbranch.The development activities are done in a specific branch. An issue is linked with each development branches.
Once the development of a new feature has completed, the developer create a
merge request (MR). The changes are reviewed and then merged into themainbranch by the Infrabase maintainers.
The gitFlow figures shows this flow.
Periodically, the maintainers publish a major release of the Infrabase. For a new version, the following steps are performed:
The main new features has been re-tested
The
CHANGELOGfile is updated with the new release information (release number, description of the main add-on to the framework, …)A
tagwith the version number is created
5.1. Development¶
For the development of new features or improvements, a new branch has to be created.
It should not be any development done directly in the main branch. Each new
topic has to have is own branch. Branches are not reused.
An issue should be linked with each branch (an issue per branch). This issue should provide:
A description of what is addressed
(Optional) Information on the advancement of this topic, issues found, explanation of the implementation, …
The issue is automatically closed after
the development branch is merged of in the main branch.
Note
Issue can be (should be) created to document problems, improvement found using the framework without having to create a branch.
The branch can be created when the issue is addressed
5.1.1. Create new issue & branch¶
To create a branch with an associated issue:
Create a new issue. The doc from gitlab: Create a new issue
Create the branch from the issue. The doc from gitlab: Create a new branch from an issue
5.1.2. Merge in the main branch¶
Once the development of a specific topic has completed and been tested, it has to be
integrated in the main branch. It is done by creating a merge request (MR).
By creating a merge request, a developer asks SOO maintainers to:
Do a review of the modifications
Performs the
merge
The creation of a merge request is simple:
Form the issue page in gitlab, click
Create merge requestbuttonValidate the creation of the
merge requestin the new Windows
Note
Ideally, there is only one commit per changes. If, for some reasons, it is not possible, please inform the dev team to lock this branch.