git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH v3 3/4] SubmittingPatches: clarify DCO is our --signoff rule

From
Bradley M. Kuhn <bkuhn@sfconservancy.org>
Date
Oct 20, 2020, 01:03 UTC
Message-ID
<2047100ba2b72e765b7afaa1ae5ea7d26644d9d9.1603155607.git.bkuhn@sfconservancy.org>
In-Reply-To
<cover.1603155607.git.bkuhn@sfconservancy.org>
From: Junio C Hamano <gitster@pobox.com>

The description on sign-off and DCO was written back in the days where there was only a choice between "use sign-off and it means the contributor agrees to the Linux-kernel style DCO" and "not using sign-off at all will make your patch unusable". These days, we are trying to clarify that the exact meaning of a sign-off varies project to project.

Let's be more explicit when presenting what _our_ rules are. It is of secondary importance that it originally came from the kernel project, so move the description as a historical note at the end, while cautioning that what a sign-off means to us may be different from what it means to other projects contributors may have been used to.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
Reviewed-by: Taylor Blau <me@ttaylorr.com>
Reviewed-by: Bradley M. Kuhn <bkuhn@sfconservancy.org>
---
 Documentation/SubmittingPatches | 25 ++++++++++++++-----------
 1 file changed, 14 insertions(+), 11 deletions(-)
diff --git a/Documentation/SubmittingPatches b/Documentation/SubmittingPatches
index 291b61e262..f83a050b35 100644
--- a/Documentation/SubmittingPatches
+++ b/Documentation/SubmittingPatches
@@ -300,15 +300,12 @@ patch.
 [[sign-off]]
 === Certify your work by adding your "Signed-off-by: " line
 
-To improve tracking of who did what, we've borrowed the
-"sign-off" procedure from the Linux kernel project on patches
-that are being emailed around.  Although core Git is a lot
-smaller project it is a good discipline to follow it.
+To improve tracking of who did what, we ask you to certify that you
+wrote the patch or have the right to pass it on under the same license
+as ours, by "signing off" your patch.  Without sign-off, we cannot
+accept your patches.
 
-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 D-C-O:
+If you can certify the below D-C-O:
 
 [[dco]]
 .Developer's Certificate of Origin 1.1
@@ -338,14 +335,15 @@ d. I understand and agree that this project and the contribution
    this project or the open source license(s) involved.
 ____
 
-then you just add a line saying
+you add a "Signed-off-by" trailer to your commit, that looks like
+this:
 
 ....
 	Signed-off-by: Random J Developer <random@developer.example.org>
 ....
 
-This line can be automatically added by Git if you run the git-commit
-command with the -s option.
+This line can be 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
@@ -353,6 +351,11 @@ 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 (2) above).
 
+This procedure originally came from the Linux kernel project, so our
+rule is quite similar to theirs, but what exactly it means to sign-off
+your patch differs from project to project, so it may be different
+from that of the project you are accustomed to.
+
 [[real-name]]
 Also notice that a real name is used in the Signed-off-by: line. Please
 don't hide your real name.
-- 
Bradley M. Kuhn - he/him
Policy Fellow & Hacker-in-Residence at Software Freedom Conservancy
========================================================================
Become a Conservancy Supporter today: https://sfconservancy.org/supporter
Previous: Taylor BlauNext: Bradley M. Kuhn
Message 26 of 35 in “Clarify and expand description of --signoff”
  1. 0/1 Clarify and expand description of --signoffBradley M. Kuhn, Oct 15, 2020
  2. 1/1 Documentation: Clarify and expand description of --signoffBradley M. Kuhn, Oct 15, 2020
  3. Jeff KingOct 16, 2020
  4. Theodore Y. Ts'oOct 18, 2020
  5. Philippe BlainOct 16, 2020
  6. Junio C HamanoOct 16, 2020
  7. Jeff KingOct 16, 2020
  8. Junio C HamanoOct 16, 2020
  9. Junio C HamanoOct 16, 2020
  10. Jeff KingOct 16, 2020
  11. Bradley M. KuhnOct 17, 2020
  12. Junio C HamanoOct 18, 2020
  13. Theodore Y. Ts'oOct 19, 2020
  14. Junio C HamanoOct 19, 2020
  15. 0/3 clarify and expand description of --signoff & related fixesBradley M. Kuhn, Oct 19, 2020
  16. 1/3 Documentation: clarify and expand description of --signoffBradley M. Kuhn, Oct 19, 2020
  17. 3/3 SubmittingPatches: clarify DCO is our --signoff ruleBradley M. Kuhn, Oct 19, 2020
  18. 2/3 Documentation: stylistically normalize references to Signed-off-by:Bradley M. Kuhn, Oct 19, 2020
  19. Taylor BlauOct 19, 2020
  20. Junio C HamanoOct 19, 2020
  21. 0/4 clarify meaning of --signoff & related doc improvements in describing Signed-off-byBradley M. Kuhn, Oct 20, 2020
  22. 1/4 doc: preparatory clean-up of description on the sign-off optionBradley M. Kuhn, Oct 20, 2020
  23. 2/4 Documentation: clarify and expand description of --signoffBradley M. Kuhn, Oct 20, 2020
  24. Bradley M. KuhnOct 20, 2020
  25. Taylor BlauOct 20, 2020
  26. 3/4 SubmittingPatches: clarify DCO is our --signoff ruleBradley M. Kuhn, Oct 20, 2020
  27. 4/4 Documentation: stylistically normalize references to Signed-off-by:Bradley M. Kuhn, Oct 20, 2020
  28. Junio C HamanoOct 20, 2020
  29. Bradley M. KuhnOct 20, 2020
  30. Taylor BlauOct 20, 2020
  31. Bradley M. KuhnOct 20, 2020
  32. Taylor BlauOct 20, 2020
  33. Junio C HamanoOct 20, 2020
  34. Bradley M. KuhnOct 20, 2020
  35. Taylor BlauOct 20, 2020

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.