From: Bartosz Golaszewski <bartosz.golaszewski@xxxxxxxxxx> Add a separate document explaining the contribution process for libgpiod with emphasis on the Developer's Certificate of Origin. I based the text of this document on the one written by Grant Likely[1] and adjusted it for libgpiod. [1] https://github.com/glikely/obs-ptz/blob/main/CONTRIBUTING.md Suggested-by: Grant Likely <grant.likely@xxxxxxxxxx> Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@xxxxxxxxxx> --- CONTRIBUTING.md | 88 +++++++++++++++++++++++++++++++++++++++++++++++++ README | 2 ++ 2 files changed, 90 insertions(+) create mode 100644 CONTRIBUTING.md diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..79b3d80 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,88 @@ +Contributing +============ + +Master copy of this project is hosted at kernel.org: +https://git.kernel.org/pub/scm/libs/libgpiod/libgpiod.git/ + +Anyone may contribute to this project. Contributions are licensed under GPLv2 +for programs and LGPLv2.1 for libraries and must be made with a Developer +Certificate of Origin [DCO] "Signed-off-by:" attestation as described below, +indicating that you wrote the code and have the right to pass it on as an open +source patch under the GPLv2 license. Patches that are not signed off will not +be accepted. + +Send patches using `git send-email` to the linux-gpio mailing list[2] by +e-mailing to linux-gpio@xxxxxxxxxxxxxxx (add the [libgpiod] prefix to the +e-mail subject line). Note that the mailing list quietly drops HTML formatted +e-mail, so be sure to send plain text[3]. + +Also, please write good git commit messages. A good commit message looks like +this: + +``` +section: explain the commit in one line (use the imperative) + +Body of commit message is a few lines of text, explaining things +in more detail, possibly giving some background about the issue +being fixed, etc etc. + +The body of the commit message can be several paragraphs, and +please do proper word-wrap and keep columns shorter than about +74 characters or so. That way "git log" will show things +nicely even when it's indented. + +Make sure you explain your solution and why you're doing what you're +doing, as opposed to describing what you're doing. Reviewers and your +future self can read the patch, but might not understand why a +particular solution was implemented. + +Reported-by: whoever-reported-it +Signed-off-by: Your Name <you@xxxxxxxxxxx> +``` + +Where that header line really should be meaningful, and really should be just +one line. That header line is what is shown by tools like gitk and shortlog, +and should summarize the change in one readable line of text, independently of +the longer explanation. Please use verbs in the imperative in the commit +message, as in "Fix bug that...", "Add file/feature ...", or "Make plugin ...". + +DCO Attestation +--------------- + +To help track the origin of contributions, this project uses the same [DCO] +"sign-off" process as used by the Linux kernel. The sign-off is a simple line +at the end of the explanation for the patch, 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: + +### 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: + + Signed-off-by: Random J Developer <random@xxxxxxxxxxxxxxxxxxxxx> + +[DCO]: https://developercertificate.org/ diff --git a/README b/README index ec60ea1..7a92a49 100644 --- a/README +++ b/README @@ -298,6 +298,8 @@ discussions and although PRs can be submitted and discussed, upstreambound patches need to go through the mailing list nevertheless while release tarballs should be fetched from kernel.org[8]. +For more information, refer to CONTRIBUTING.md in this repository. + [1] https://github.com/kward/shunit2 [2] http://vger.kernel.org/vger-lists.html#linux-gpio [3] https://docs.kernel.org/process/email-clients.html -- 2.40.1