submit.mdwn 2.57 KB
Newer Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
[[!meta title="How to propose changes"]]

We use [[!tails_gitlab desc="GitLab"]] for tracking issues, merge requests, and
code. Please ensure you are familiar with [[how we use GitLab at
Tails|contribute/working_together/GitLab]].

All proposed changes should be prepared in topic branches. For a new feature XXX
tracked by issue number NNNN, it should be named `feature/NNNN-XXX`.
For a bugfix about YYY, it should be named `bugfix/NNNN-YYY`.

To submit your branch for review:

1. Test your branch. If your branch contains code changes, test it with its
   target branch (`config/base_branch`) merged into it.

2. Push your branch

   If you have commit access to the official Tails Git repository,
   push your branch there so our CI picks it up.

   Else, push to your own fork of the Tails
   [[!tails_gitweb_repo tails/tails desc="Git repository"]].

3. Once you would like your branch to be reviewed, and possibly merged,
   submit it:

   1. If your branch contains code changes and you have access to our Jenkins
      instance:

      - Ensure your branch builds on Jenkins.
      - Either take note of the test suite scenarios you've seen pass
        successfully locally, or check that the test suite passes on Jenkins.

   2. On the corresponding GitLab issue:

      - Set the *Milestone* field to the release you would like your changes to
        land in.
      - If there's a *To Do* or *Doing* label, replace it with the *Needs
        Validation* label.

   3. Create a [[!tails_gitlab help/user/project/merge_requests desc="Merge
      Request"]] (aka. MR). There are [[!tails_gitlab
      help/user/project/merge_requests/creating_merge_requests.html desc="many
      ways"]] to do so. For example, you can click the *Create merge request*
      button on the corresponding issue.

      In this new MR:

      - Use the description to:
         - Summarize what problem this MR will fix, in terms of impact on users.
         - Reference the issues this MR will solve: `Closes #xxx, #yyyy`.
      - If it's obvious to you who can, and should, review your branch: assign
sajolida's avatar
sajolida committed
53
        the MR to that person.
54
55
56
57
58
59
60
61
62
        Else, leave the MR unassigned:
        the [[Foundations Team|working_together/roles/foundations_team]] will
        either handle the review themselves or help you find a suitable reviewer.
      - If you have run some test suite scenarios locally: report about your
        results in a new comment.

Then, for every subsequent submit/review/fix cycle: once you've fixed all
problems raised by the reviewer, update the issue and MR metadata again as
documented above (milestone, assignee, and labels).