|
|
|
# Gitlab usage
|
|
|
|
|
|
|
|
## General dev workflow
|
|
|
|
### :newspaper: Create an issue
|
|
|
|
:interrobang: Is there something that bothers you and you think needs to be done in the project ?
|
|
|
|
Create an issue about it :
|
|
|
|
1. Go to the [Issue board of the project](https://gitlab.eclipse.org/groups/eclipse/aidge/-/boards/3169)
|
|
|
|
2. Check if a similar issue doesn't already exists in the open issues of the board.
|
|
|
|
3. Create an issue in the right column.
|
|
|
|
- ``OPEN`` There is no hurry to fill this issue.
|
|
|
|
- ``status::TODO`` : It needs to be done during current sprint.
|
|
|
|
- ``status::WIP`` : You need to start directly to work on this issue.
|
|
|
|
> :warning: In the 2 latter cases also set the milestone to current sprint.
|
|
|
|
|
|
|
|
4. Attribute the issue to the designated dev (usually yourself) if you know whose job it is already.
|
|
|
|
5. Detail the issue created : Specification, code sample test to add, todo list (=child issue/items)
|
|
|
|
|
|
|
|
- Issue created with label ``status::TODO``
|
|
|
|
- Issue attributed to a dev
|
|
|
|
- Assigned dev works on issue to detail dev to do (specification, code sample test to add, todo list (=child issue))
|
|
|
|
- Move label issue from ``status::TODO`` to ``status::WIP``
|
|
|
|
- Create local branch + MR (in MR title add ``Draft:<MR title>`` or check the draft checkbox when creating/editing) + mention issue in MR
|
|
|
|
- When the MR is ready remove the tag Draft from the title
|
|
|
|
- When every MR is ready move label issue from ``status::WIP`` to ``status::Review Ready``
|
|
|
|
- Review process
|
|
|
|
- Merge MR
|
|
|
|
- When every MR is merged, close issue
|
|
|
|
- Make sure to close every child issue before closing the main issue
|
|
|
|
### :tools: Start working on an issue
|
|
|
|
1. Create a local branch with a specific prefix to its name :
|
|
|
|
* `fix/...` is the branch/the issue is a malfunction to repair.
|
|
|
|
* `chore/...` if the issue is a minor such as updating a dependency.
|
|
|
|
* `refactor/...` if the issue is about a refactoring.
|
|
|
|
* `feat/...` if the issue is about a new feature.
|
|
|
|
2. Once you have pushed your 1st commit, you can create an associated Merge Request(MR) to your branch. Since the (in MR title add ``Draft: <MR title>`` or check the draft checkbox when creating/editing)
|
|
|
|
3. Mention the issue associated in the merge request description. This will have as consequence that all the MR associated to an issue will be shown on the issue page. This allows to track the evolution of the progress on a given issue.
|
|
|
|
3. When the MR is ready remove the part `Draft :` from the title. This allows the reviewers to know when they can review the code.
|
|
|
|
> :warning: An Issue no longer in Draft: the branch pulled will be from the target branch of the depedencies, if you haven't merge associated work in dependencies, the pipeline mght fail then.
|
|
|
|
4. When all MR are ready for review. Move the issues from the column ``status::WIP`` to ``status::Review Ready``.
|
|
|
|
5. Review proces
|
|
|
|
6. Merge MR
|
|
|
|
7. When every MR is merged, close issue
|
|
|
|
> :exclamation: Make sure to close every child issue before closing the main issue
|
|
|
|
|
|
|
|
## Global workflow
|
|
|
|
|
| ... | ... | |