Commit 8d66a8f7 authored by Gloria Corti's avatar Gloria Corti
Browse files

Update explanations on how to contribute

parent b12fed48
# Contributions to the Gauss GitLab project
When you contribute new or modified code to Gauss ensure to start by getting a copy of the package(s) you need to modify from the branch you
intend this code to be for.
When you contribute new or modified code to Gauss ensure to start by getting a copy of the package(s) you need to modify **from the branch you
intend this code to be for**.
Due to the fact that the majority of people contributing code will want it to be deployed in Sim09, and you should specify this branch for
your pull and merge requests.
......@@ -19,36 +19,33 @@ It is recommended you create a Jira task in the LHCBGAUSS Jira (LHCBGAUSS-NNNN i
before pushing to the remote Gauss repository, and we suggest
you do so early on in the process as we can provide general suggestions and comments before hand.
The name of the branch you commit your code to should start with the JIRA ticket you created you task to which this code is related to
and be followed by one more human readable word separated with a “.” (.CutForUpsilon), e.g:
It is suggested that the name of the branch you commit your code is related to what it is for e.g:
```
git lb-push Gauss LHCBGAUSS-NNNN.WhatTheCodeIsFor
git lb-push Gauss WhatTheCodeIsFor
```
Once the branch has been pushed to the repository other people can look at the code and contribute to the development by using the same branch.
When you are ready for the code to be tested with the next Gauss candidate release for a given branch you have to create a merge request.
For Gauss you do not need to start with WIP the title of the merge request’s. Please put a meaningull tile and the Jira ticket in the description,
When you are ready for the code to be tested and reviewed you have to **create a merge request**.
Please put a meaningull tile and the Jira ticket in the description,
e.g. this refers to / closes / see / details in LHCBGAUSS-NNNN
This will introduce a direct link between the Jira task and the merge request that will later be carried on in the release notes
and web documentation.
When creating the merge request you need to first *select the branch you want this to be applied to*. The default is master so be sure to change
it to either Sim09 or Sim09-upgrade if you need to.
In case you want the code to be also propagated to those you should add a comment to this extent into the merge request.
The Gauss manager will take care of doing so.
it to `Sim09` if you need to.
In case you want the code is for master but you want it to be propagated to `Sim09` or vice-versa either add a comment to this extent into the merge request
or select the label ~ToSim09 or ~ToMaster.
The Gauss manager will take care of the rest and keep you in the loop.
# Testing and reviewing the code you submitted
In order to test the code provided for new releases we have various nightly slots. In particular for Gauss we have setup two dedicated nightly slots:
- **lhcb-sim09**, for the continuous build of the next Gauss v49rX release
- **lhcb-sim09-upgrade**, with the same scope for the next Gauss v50rX
- **lhcb-gauss-dev**, for the continuos build of the master branch and the bext Gauss v52rX (Sim10 preparation)
In order to test the code provided for new releases we have various nightly slots and for Gauss we have additional dedicated nightly slots.
For a MR to be picked up in the nightly the corresponding label has to be selected.
The whole up-to-date list with an explanation can be found [here]()
Gauss in lhcb-sim09 is built from the head of the Sim09 GitLab branch,
while the one in lhcb-sim09-upgrade is built from the Sim09-upgrade branch,
and the one in lhcb-gauss-dev is built from master
Gauss in lhcb-sim09 and lhcb-sim09-cmake is built from the head of the Sim09 GitLab branch + the selected MR
while the one in the other slots is built from master.
_All merge requests for a given branch are automatically included in the corresponding nightly build_ to ensure they can compile correctly.
In case the code of the merge request does not compile it will be exclude from future builds until a fix is provided.
The person asking for a merge request should verify that the code provides the expected results by running Gauss from the corresponding
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment