aboutsummaryrefslogtreecommitdiffstats
path: root/docs/5_How_To_Contribute/4_Submitting_Changes.md
blob: d2264507d43b212239654b6ea8934553c3bfe751 (plain)
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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
---
title: Submitting Changes
---

Carefully review the following before submitting a change. These guidelines
apply to developers that are new to open source, as well as to experienced open
source developers.

## Change Requirements


This section contains guidelines for submitting code changes for review. For
more information on how to submit a change using Gerrit, please see [Working
with Gerrit](./3_Working_with_Gerrit.md).

Changes are submitted as Git commits. Each commit must contain:

-  a short and descriptive subject line that is 72 characters or fewer, followed
   by a blank line.
-  a change description with your logic or reasoning for the changes, followed
   by a blank line
-  a Signed-off-by line, followed by a colon (Signed-off-by:)
-  a Change-Id identifier line, followed by a colon (Change-Id:). Gerrit won't
   accept patches without this identifier.

A commit with the above details is considered well-formed. [This
page](https://chris.beams.io/posts/git-commit/) is a very useful for the same.

All changes and topics sent to Gerrit must be well-formed. Informationally,
``commit messages`` must include:

-  **what** the change does,
-  **why** you chose that approach, and
-  **how** you know it works -- for example, which tests you ran.

For example: One commit fixes whitespace issues, another renames a function and
a third one changes the code's functionality. An example commit file is
illustrated below in detail:

```sh

A short description of your change with no period at the end

You can add more details here in several paragraphs, but please keep each line
width less than 80 characters. A bug fix should include the issue number.

Bug-AGL: [SPEC-<JIRA-ID>]
Change-Id: IF7b6ac513b2eca5f2bab9728ebd8b7e504d3cebe1
Signed-off-by: Your Name <commit-sender@email.address>
```

Include the issue ID in the one line description of your commit message for
readability. Gerrit will link issue IDs automatically to the corresponding entry
in Jira.

Each commit must also contain the following line at the bottom of the commit
message:

```sh
Signed-off-by: Your Name <your@email.address>
```

The name in the Signed-off-by line and your email must match the change
authorship information. Make sure your :file:``.git/config`` is set up
correctly. Always submit the full set of changes via Gerrit.

When a change is included in the set to enable other changes, but it will not be
part of the final set, please let the reviewers know this.