-
Notifications
You must be signed in to change notification settings - Fork 2
/
HACKING
94 lines (68 loc) · 3.78 KB
/
HACKING
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
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
=== Contributing to ufw ===
* General Conventions
Contributions to ufw are highly welcome. Be it new features, bug fixes,
improvements with respect to portability, new tests, more documentation
and more. For code consistency, please try to use the same conventions
as are used in the rest of the ufw codebase. To help with that, the pro-
ject contains a clang-format configuration that gets the basics right.
Note that sometimes human intervention is required, even with clang-for-
mat in play, especially when it comes to aligning complex expressions.
Also note that contributions do get reviewed before inclusion. You may
be asked to rework parts of your contribution. Make sure you are okay
with that before investing time.
* Certify your work by adding a Signed-off-by: line
** Reasoning
To improve tracking of who did what, we've borrowed the "sign-off" pro-
cedure from the Linux kernel and Git projects on patches that are being
emailed around. Although core Git is a lot smaller project it is a good
discipline to follow it.
The sign-off statement is a simple line at the end of the commit mes-
sage, which certifies that you wrote it or otherwise have the right to
pass it on as an open-source patch. The rules are pretty simple: If you
can certify the below D-C-O:
** Developer's Certificate of Origin 1.1
By making a contribution to this project, I certify that:
a. The contribution was created in whole or in part by me and I have the
right to submit it under the open source license indicated in the
file; or
b. The contribution is based upon previous work that, to the best of my
knowledge, is covered under an appropriate open source license and I
have the right under that license to submit that work with
modifications, whether created in whole or in part by me, under the
same open source license (unless I am permitted to submit under a
different license), as indicated in the file; or
c. The contribution was provided directly to me by some other person who
certified (a), (b) or (c) and I have not modified it.
d. I understand and agree that this project and the contribution are
public and that a record of the contribution (including all personal
information I submit with it, including my sign-off) is maintained
indefinitely and may be redistributed consistent with this project or
the open source license(s) involved.
…then you just add a line saying:
#+BEGIN_EXAMPLE
Signed-off-by: Random J Developer <random@developer.example.org>
#+END_EXAMPLE
This line can be automatically added by Git if you run the git-commit
command with the -s option.
Notice that you can place your own Signed-off-by: line when forwarding
somebody else's patch with the above rules for D-C-O. Indeed you are
encouraged to do so. Do not forget to place an in-body "From: " line at
the beginning to properly attribute the change to its true author (see
above).
** Real Name
Also notice that a real name is used in the Signed-off-by: line. Please
don't hide your real name.
** Commit Trailers
If you like, you can put extra tags at the end:
- `Reported-by:` is used to credit someone who found the bug that the
patch attempts to fix.
- `Acked-by:` says that the person who is more familiar with the area
the patch attempts to modify liked the patch.
- `Reviewed-by:`, unlike the other tags, can only be offered by the
reviewer and means that she is completely satisfied that the patch is
ready for application. It is usually offered only after a detailed
review.
- `Tested-by:` is used to indicate that the person applied the patch and
found it to have the desired effect.
You can also create your own tag or use one that's in common usage such
as "Thanks-to:", "Based-on-patch-by:", or "Mentored-by:".