commit: document that $command.signoff will not be added

Every now and then we see this coming up on the list.  Let's help
new contributors who are not aware of past discussions by clearly
documenting our past consensus.

Helped-by: brian m. carlson <sandals@crustytoothpaste.net>
Helped-by: Elijah Newren <newren@gmail.com>
Helped-by: Johannes Sixt <j6t@kdbg.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Junio C Hamano
2025-12-17 03:54:15 +09:00
parent 9a2fb147f2
commit 1129780f6a
2 changed files with 23 additions and 0 deletions

View File

@@ -83,6 +83,25 @@ Windows would be the configuration `"C:\Program Files\Vim\gvim.exe" --nofork`,
which quotes the filename with spaces and specifies the `--nofork` option to
avoid backgrounding the process.
[[sign-off]]
Why not have `commit.signoff` and other configuration variables?::
Git intentionally does not (and will not) provide a
configuration variable, such as `commit.signoff`, to
automatically add `--signoff` by default. The reason is to
protect the legal and intentional significance of a sign-off.
If there were more automated and widely publicized ways for
sign-offs to be appended, it would become easier for someone
to argue later that a "Signed-off-by" trailer was just added
out of habit or by automation, without the committer's full
awareness or intent to certify their agreement with the
Developer Certificate of Origin (DCO) or a similar statement.
This could undermine the sign-offs credibility in legal or
contractual situations.
+
There exists `format.signoff`, but that is a historical mistake, and
it is not an excuse to add more mistakes of the same kind on top.
Credentials
-----------

View File

@@ -16,3 +16,7 @@ endif::git-commit[]
+
The `--no-signoff` option can be used to countermand an earlier `--signoff`
option on the command line.
+
Git does not (and will not) have a configuration variable to enable
the `--signoff` command line option by default; see the
`commit.signoff` entry in the gitfaq for more details.