* Would it make sense to add a commit.signOff config?
@ 2025-12-14 16:10 Stefan Haller
2025-12-14 16:44 ` Carlo Marcelo Arenas Belón
0 siblings, 1 reply; 20+ messages in thread
From: Stefan Haller @ 2025-12-14 16:10 UTC (permalink / raw)
To: Git
I find it interesting that of all the git commands that take a --signoff
argument, format-patch is the only one that has a corresponding config
to turn it on for all invocations. I would have thought that git commit
needs this even more; I find it reasonable for users to decide that they
want to add a Signed-off-by trailer to all the commits they make.
But then, what about merge, cherry-pick, and revert? Does it make sense
to turn it on globally for those as well?
The background of this question is lazygit, which has a config for
enabling --signoff for all commits made by it. We recently had a feature
request to extend the meaning of that config to revert as well, and the
discussion came up whether that's a good idea, and if so, whether it
should also extend to cherry-pick and merge.
Any opinions about this? Since I work mostly in closed-source contexts I
don't have much experience with the meaning of Signed-off-by trailers.
-Stefan
^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: Would it make sense to add a commit.signOff config?
2025-12-14 16:10 Would it make sense to add a commit.signOff config? Stefan Haller
@ 2025-12-14 16:44 ` Carlo Marcelo Arenas Belón
2025-12-14 23:44 ` Junio C Hamano
0 siblings, 1 reply; 20+ messages in thread
From: Carlo Marcelo Arenas Belón @ 2025-12-14 16:44 UTC (permalink / raw)
To: Stefan Haller; +Cc: Git
On Sun, Dec 14, 2025 at 05:10:19PM -0800, Stefan Haller wrote:
> I find it interesting that of all the git commands that take a --signoff
> argument, format-patch is the only one that has a corresponding config
> to turn it on for all invocations. I would have thought that git commit
> needs this even more; I find it reasonable for users to decide that they
> want to add a Signed-off-by trailer to all the commits they make.
>
> But then, what about merge, cherry-pick, and revert? Does it make sense
> to turn it on globally for those as well?
>
> The background of this question is lazygit, which has a config for
> enabling --signoff for all commits made by it. We recently had a feature
> request to extend the meaning of that config to revert as well, and the
> discussion came up whether that's a good idea, and if so, whether it
> should also extend to cherry-pick and merge.
>
> Any opinions about this?
this was discussed recently[0] and the point that was made is that SOA are
meant to be relevant mainly in open source contexts and should be explicitly
given.
Carlo
[0] https://lore.kernel.org/git/xmqq4iwvfx8s.fsf@gitster.g/
^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: Would it make sense to add a commit.signOff config?
2025-12-14 16:44 ` Carlo Marcelo Arenas Belón
@ 2025-12-14 23:44 ` Junio C Hamano
2025-12-14 23:52 ` Collin Funk
2025-12-15 1:22 ` brian m. carlson
0 siblings, 2 replies; 20+ messages in thread
From: Junio C Hamano @ 2025-12-14 23:44 UTC (permalink / raw)
To: Carlo Marcelo Arenas Belón; +Cc: Stefan Haller, Git
Carlo Marcelo Arenas Belón <carenas@gmail.com> writes:
> this was discussed recently[0] and the point that was made is that SOA are
> meant to be relevant mainly in open source contexts and should be explicitly
> given.
>
> Carlo
>
> [0] https://lore.kernel.org/git/xmqq4iwvfx8s.fsf@gitster.g/
Thanks for a spelunking starter.
Perhaps we should resurrect a proposed patch from 2020 (which no
longer apply cleanly, but quoted to show what the additinoal text
said).
https://lore.kernel.org/git/xmqqpnfw8gyn.fsf@gitster-ct.c.googlers.com/
to save time from potential contributors? I do not want to see new
contributors feeling they wasted their time after putting their
effort.
diff --git a/Documentation/git-commit.txt b/Documentation/git-commit.txt
index ced5a9beab..1909551087 100644
--- a/Documentation/git-commit.txt
+++ b/Documentation/git-commit.txt
@@ -171,6 +171,13 @@ The `-m` option is mutually exclusive with `-c`, `-C`, and `-F`.
the rights to submit this work under the same license and
agrees to a Developer Certificate of Origin
(see http://developercertificate.org/ for more information).
++
+As it makes it harder to argue against one who tells the court "that
+log message ends with a SoB by person X but it is very plausible
+that it was done by inertia without person X really intending to
+certify what DCO says, and the SoB is meaningless." to more
+publicized ways to add SoB automatically, Git does not (and will not)
+have a configuration variable to enable it by default.
-n::
--no-verify::
^ permalink raw reply related [flat|nested] 20+ messages in thread
* Re: Would it make sense to add a commit.signOff config?
2025-12-14 23:44 ` Junio C Hamano
@ 2025-12-14 23:52 ` Collin Funk
2025-12-15 1:22 ` brian m. carlson
1 sibling, 0 replies; 20+ messages in thread
From: Collin Funk @ 2025-12-14 23:52 UTC (permalink / raw)
To: Junio C Hamano; +Cc: Carlo Marcelo Arenas Belón, Stefan Haller, Git
Junio C Hamano <gitster@pobox.com> writes:
> Carlo Marcelo Arenas Belón <carenas@gmail.com> writes:
>
>> this was discussed recently[0] and the point that was made is that SOA are
>> meant to be relevant mainly in open source contexts and should be explicitly
>> given.
>>
>> Carlo
>>
>> [0] https://lore.kernel.org/git/xmqq4iwvfx8s.fsf@gitster.g/
>
> Thanks for a spelunking starter.
>
> Perhaps we should resurrect a proposed patch from 2020 (which no
> longer apply cleanly, but quoted to show what the additinoal text
> said).
>
> https://lore.kernel.org/git/xmqqpnfw8gyn.fsf@gitster-ct.c.googlers.com/
>
> to save time from potential contributors? I do not want to see new
> contributors feeling they wasted their time after putting their
> effort.
Sounds like a good idea to me since it has come up a few times and, at
least from that thread, there is wide agreement it shouldn't be added.
> diff --git a/Documentation/git-commit.txt b/Documentation/git-commit.txt
> index ced5a9beab..1909551087 100644
> --- a/Documentation/git-commit.txt
> +++ b/Documentation/git-commit.txt
> @@ -171,6 +171,13 @@ The `-m` option is mutually exclusive with `-c`, `-C`, and `-F`.
> the rights to submit this work under the same license and
> agrees to a Developer Certificate of Origin
> (see http://developercertificate.org/ for more information).
> ++
> +As it makes it harder to argue against one who tells the court "that
> +log message ends with a SoB by person X but it is very plausible
> +that it was done by inertia without person X really intending to
> +certify what DCO says, and the SoB is meaningless." to more
> +publicized ways to add SoB automatically, Git does not (and will not)
> +have a configuration variable to enable it by default.
I think it is a bit more clear to just write "Signed-off-by" instead of
using the abbreviation SoB. That isn't used elsewhere, as far as I can
tell.
Collin
^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: Would it make sense to add a commit.signOff config?
2025-12-14 23:44 ` Junio C Hamano
2025-12-14 23:52 ` Collin Funk
@ 2025-12-15 1:22 ` brian m. carlson
2025-12-15 1:59 ` Junio C Hamano
1 sibling, 1 reply; 20+ messages in thread
From: brian m. carlson @ 2025-12-15 1:22 UTC (permalink / raw)
To: Junio C Hamano; +Cc: Carlo Marcelo Arenas Belón, Stefan Haller, Git
[-- Attachment #1: Type: text/plain, Size: 1760 bytes --]
On 2025-12-14 at 23:44:47, Junio C Hamano wrote:
> Thanks for a spelunking starter.
>
> Perhaps we should resurrect a proposed patch from 2020 (which no
> longer apply cleanly, but quoted to show what the additinoal text
> said).
>
> https://lore.kernel.org/git/xmqqpnfw8gyn.fsf@gitster-ct.c.googlers.com/
>
> to save time from potential contributors? I do not want to see new
> contributors feeling they wasted their time after putting their
> effort.
I think this would be a fine approach or we could add an entry in the
Git FAQ (or both). I agree that this is something that comes up
frequently and writing it down in a more visible way would be kinder to
users and mailing list participants.
> diff --git a/Documentation/git-commit.txt b/Documentation/git-commit.txt
> index ced5a9beab..1909551087 100644
> --- a/Documentation/git-commit.txt
> +++ b/Documentation/git-commit.txt
> @@ -171,6 +171,13 @@ The `-m` option is mutually exclusive with `-c`, `-C`, and `-F`.
> the rights to submit this work under the same license and
> agrees to a Developer Certificate of Origin
> (see http://developercertificate.org/ for more information).
> ++
> +As it makes it harder to argue against one who tells the court "that
> +log message ends with a SoB by person X but it is very plausible
> +that it was done by inertia without person X really intending to
> +certify what DCO says, and the SoB is meaningless." to more
I think the period should be replaced here by a comma since the
quotation is part of a larger sentence.
> +publicized ways to add SoB automatically, Git does not (and will not)
> +have a configuration variable to enable it by default.
--
brian m. carlson (they/them)
Toronto, Ontario, CA
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 262 bytes --]
^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: Would it make sense to add a commit.signOff config?
2025-12-15 1:22 ` brian m. carlson
@ 2025-12-15 1:59 ` Junio C Hamano
2025-12-15 22:29 ` brian m. carlson
` (2 more replies)
0 siblings, 3 replies; 20+ messages in thread
From: Junio C Hamano @ 2025-12-15 1:59 UTC (permalink / raw)
To: brian m. carlson; +Cc: Carlo Marcelo Arenas Belón, Stefan Haller, Git
"brian m. carlson" <sandals@crustytoothpaste.net> writes:
> I think this would be a fine approach or we could add an entry in the
> Git FAQ (or both). I agree that this is something that comes up
> frequently and writing it down in a more visible way would be kinder to
> users and mailing list participants.
Something like this, then?
---- >8 ----
Subject: [PATCH] document that foo.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>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
---
Documentation/gitfaq.adoc | 15 +++++++++++++++
Documentation/signoff-option.adoc | 12 ++++++++++++
2 files changed, 27 insertions(+)
diff --git c/Documentation/gitfaq.adoc w/Documentation/gitfaq.adoc
index f2917d142c..656093047a 100644
--- c/Documentation/gitfaq.adoc
+++ w/Documentation/gitfaq.adoc
@@ -83,6 +83,21 @@ 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?::
+ As it makes it harder to argue against one who tells the court
+ "the log message of the commit ends with a Signed-off-by
+ trailer by person X, but it is very plausible that it was done
+ by inertia without person X really intending to certify what
+ DCO says, hence the Signed-off-by trailer is meaningless", if
+ we add more publicized ways to add sign-off automatically, Git
+ does not (and will not) have a configuration variable to
+ enable the `--signoff` command line option it by default.
++
+There exists `format.signoff`, but that is a historical mistake, and
+it is not an excuse to pile on more mistakes of the same kind on top.
+
+
Credentials
-----------
diff --git c/Documentation/signoff-option.adoc w/Documentation/signoff-option.adoc
index cddfb225d1..0b869dfbe4 100644
--- c/Documentation/signoff-option.adoc
+++ w/Documentation/signoff-option.adoc
@@ -16,3 +16,15 @@ endif::git-commit[]
+
The `--no-signoff` option can be used to countermand an earlier `--signoff`
option on the command line.
++
+As it makes it harder to argue against one who tells the court "the
+log message of the commit ends with a Signed-off-by trailer by person
+X, but it is very plausible that it was done by inertia without person
+X really intending to certify what DCO says, hence the Signed-off-by
+trailer is meaningless", if we add more publicized ways to add
+sign-off automatically, Git does not (and will not) have a
+configuration variable to enable the `--signoff` command line option
+it by default.
++
+There exists `format.signoff`, but that is a historical mistake, and
+it is not an excuse to pile on more mistakes of the same kind on top.
^ permalink raw reply related [flat|nested] 20+ messages in thread
* Re: Would it make sense to add a commit.signOff config?
2025-12-15 1:59 ` Junio C Hamano
@ 2025-12-15 22:29 ` brian m. carlson
2025-12-16 1:20 ` Junio C Hamano
2025-12-16 0:17 ` Elijah Newren
2025-12-16 18:54 ` [PATCH v2] commit: document that $command.signoff will not be added Junio C Hamano
2 siblings, 1 reply; 20+ messages in thread
From: brian m. carlson @ 2025-12-15 22:29 UTC (permalink / raw)
To: Junio C Hamano; +Cc: Carlo Marcelo Arenas Belón, Stefan Haller, Git
[-- Attachment #1: Type: text/plain, Size: 501 bytes --]
On 2025-12-15 at 01:59:46, Junio C Hamano wrote:
> "brian m. carlson" <sandals@crustytoothpaste.net> writes:
>
> > I think this would be a fine approach or we could add an entry in the
> > Git FAQ (or both). I agree that this is something that comes up
> > frequently and writing it down in a more visible way would be kinder to
> > users and mailing list participants.
>
> Something like this, then?
Yup, that looks good to me.
--
brian m. carlson (they/them)
Toronto, Ontario, CA
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 262 bytes --]
^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: Would it make sense to add a commit.signOff config?
2025-12-15 1:59 ` Junio C Hamano
2025-12-15 22:29 ` brian m. carlson
@ 2025-12-16 0:17 ` Elijah Newren
2025-12-16 2:29 ` Junio C Hamano
2025-12-16 7:15 ` Johannes Sixt
2025-12-16 18:54 ` [PATCH v2] commit: document that $command.signoff will not be added Junio C Hamano
2 siblings, 2 replies; 20+ messages in thread
From: Elijah Newren @ 2025-12-16 0:17 UTC (permalink / raw)
To: Junio C Hamano
Cc: brian m. carlson, Carlo Marcelo Arenas Belón, Stefan Haller,
Git
On Sun, Dec 14, 2025 at 6:00 PM Junio C Hamano <gitster@pobox.com> wrote:
>
> "brian m. carlson" <sandals@crustytoothpaste.net> writes:
>
> > I think this would be a fine approach or we could add an entry in the
> > Git FAQ (or both). I agree that this is something that comes up
> > frequently and writing it down in a more visible way would be kinder to
> > users and mailing list participants.
>
> Something like this, then?
>
> ---- >8 ----
> Subject: [PATCH] document that foo.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>
> Signed-off-by: Junio C Hamano <gitster@pobox.com>
> ---
> Documentation/gitfaq.adoc | 15 +++++++++++++++
> Documentation/signoff-option.adoc | 12 ++++++++++++
> 2 files changed, 27 insertions(+)
>
> diff --git c/Documentation/gitfaq.adoc w/Documentation/gitfaq.adoc
> index f2917d142c..656093047a 100644
> --- c/Documentation/gitfaq.adoc
> +++ w/Documentation/gitfaq.adoc
> @@ -83,6 +83,21 @@ 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?::
> + As it makes it harder to argue against one who tells the court
> + "the log message of the commit ends with a Signed-off-by
> + trailer by person X, but it is very plausible that it was done
> + by inertia without person X really intending to certify what
> + DCO says, hence the Signed-off-by trailer is meaningless", if
> + we add more publicized ways to add sign-off automatically, Git
> + does not (and will not) have a configuration variable to
> + enable the `--signoff` command line option it by default.
This feels kind of hard to parse for me. Maybe it's just the lack of
sentence breaks, particularly near the end. Let me take a stab at an
alternative:
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 would weaken the sign-off’s value and could undermine its credibility
in legal or contractual situations. To uphold the integrity of a sign-off,
Git only adds it when explicitly requested, rather than through automatic
configuration settings.
Maybe the last sentence or two are a bit redundant and could be
stricken. Anyway, thoughts?
> ++
> +There exists `format.signoff`, but that is a historical mistake, and
> +it is not an excuse to pile on more mistakes of the same kind on top.
> +
> +
> Credentials
> -----------
>
> diff --git c/Documentation/signoff-option.adoc w/Documentation/signoff-option.adoc
> index cddfb225d1..0b869dfbe4 100644
> --- c/Documentation/signoff-option.adoc
> +++ w/Documentation/signoff-option.adoc
> @@ -16,3 +16,15 @@ endif::git-commit[]
> +
> The `--no-signoff` option can be used to countermand an earlier `--signoff`
> option on the command line.
> ++
> +As it makes it harder to argue against one who tells the court "the
> +log message of the commit ends with a Signed-off-by trailer by person
> +X, but it is very plausible that it was done by inertia without person
> +X really intending to certify what DCO says, hence the Signed-off-by
> +trailer is meaningless", if we add more publicized ways to add
> +sign-off automatically, Git does not (and will not) have a
> +configuration variable to enable the `--signoff` command line option
> +it by default.
> ++
> +There exists `format.signoff`, but that is a historical mistake, and
> +it is not an excuse to pile on more mistakes of the same kind on top.
This feels like it's missing context (it'll take the reader a while to
figure out why the paragraphs are there and that the two are related),
and isn't as helpful to someone just trying to understand which
command line flags exist and what they do. Maybe combine the two new
paragraphs? Or, perhaps just a shorter version that just refers to
the FAQ? The latter might be something like:
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.
(`format.signoff`, is an exception, but it was a historical mistake,
not an excuse to pile on more mistakes.)
^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: Would it make sense to add a commit.signOff config?
2025-12-15 22:29 ` brian m. carlson
@ 2025-12-16 1:20 ` Junio C Hamano
0 siblings, 0 replies; 20+ messages in thread
From: Junio C Hamano @ 2025-12-16 1:20 UTC (permalink / raw)
To: brian m. carlson; +Cc: Carlo Marcelo Arenas Belón, Stefan Haller, Git
"brian m. carlson" <sandals@crustytoothpaste.net> writes:
> On 2025-12-15 at 01:59:46, Junio C Hamano wrote:
>> "brian m. carlson" <sandals@crustytoothpaste.net> writes:
>>
>> > I think this would be a fine approach or we could add an entry in the
>> > Git FAQ (or both). I agree that this is something that comes up
>> > frequently and writing it down in a more visible way would be kinder to
>> > users and mailing list participants.
>>
>> Something like this, then?
>
> Yup, that looks good to me.
Thanks.
^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: Would it make sense to add a commit.signOff config?
2025-12-16 0:17 ` Elijah Newren
@ 2025-12-16 2:29 ` Junio C Hamano
2025-12-16 7:10 ` Johannes Sixt
2025-12-16 7:15 ` Johannes Sixt
1 sibling, 1 reply; 20+ messages in thread
From: Junio C Hamano @ 2025-12-16 2:29 UTC (permalink / raw)
To: Elijah Newren
Cc: brian m. carlson, Carlo Marcelo Arenas Belón, Stefan Haller,
Git
Elijah Newren <newren@gmail.com> writes:
>> diff --git c/Documentation/signoff-option.adoc w/Documentation/signoff-option.adoc
>> index cddfb225d1..0b869dfbe4 100644
>> --- c/Documentation/signoff-option.adoc
>> +++ w/Documentation/signoff-option.adoc
>> @@ -16,3 +16,15 @@ endif::git-commit[]
>> +
>> The `--no-signoff` option can be used to countermand an earlier `--signoff`
>> option on the command line.
>> ++
>> +As it makes it harder to argue against one who tells the court "the
>> +log message of the commit ends with a Signed-off-by trailer by person
>> +X, but it is very plausible that it was done by inertia without person
>> +X really intending to certify what DCO says, hence the Signed-off-by
>> +trailer is meaningless", if we add more publicized ways to add
>> +sign-off automatically, Git does not (and will not) have a
>> +configuration variable to enable the `--signoff` command line option
>> +it by default.
>> ++
>> +There exists `format.signoff`, but that is a historical mistake, and
>> +it is not an excuse to pile on more mistakes of the same kind on top.
>
> This feels like it's missing context (it'll take the reader a while to
> figure out why the paragraphs are there and that the two are related),
Very true. It may be sufficient to leave this part unmodified,
keep the updates to gitfaq document, and do nothing else.
^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: Would it make sense to add a commit.signOff config?
2025-12-16 2:29 ` Junio C Hamano
@ 2025-12-16 7:10 ` Johannes Sixt
0 siblings, 0 replies; 20+ messages in thread
From: Johannes Sixt @ 2025-12-16 7:10 UTC (permalink / raw)
To: Junio C Hamano
Cc: brian m. carlson, Carlo Marcelo Arenas Belón, Stefan Haller,
Git, Elijah Newren
Am 16.12.25 um 03:29 schrieb Junio C Hamano:
> Elijah Newren <newren@gmail.com> writes:
>
>>> diff --git c/Documentation/signoff-option.adoc w/Documentation/signoff-option.adoc
>>> index cddfb225d1..0b869dfbe4 100644
>>> --- c/Documentation/signoff-option.adoc
>>> +++ w/Documentation/signoff-option.adoc
>>> @@ -16,3 +16,15 @@ endif::git-commit[]
>>> +
>>> The `--no-signoff` option can be used to countermand an earlier `--signoff`
>>> option on the command line.
>>> ++
>>> +As it makes it harder to argue against one who tells the court "the
>>> +log message of the commit ends with a Signed-off-by trailer by person
>>> +X, but it is very plausible that it was done by inertia without person
>>> +X really intending to certify what DCO says, hence the Signed-off-by
>>> +trailer is meaningless", if we add more publicized ways to add
>>> +sign-off automatically, Git does not (and will not) have a
>>> +configuration variable to enable the `--signoff` command line option
>>> +it by default.
>>> ++
>>> +There exists `format.signoff`, but that is a historical mistake, and
>>> +it is not an excuse to pile on more mistakes of the same kind on top.
>>
>> This feels like it's missing context (it'll take the reader a while to
>> figure out why the paragraphs are there and that the two are related),
>
> Very true. It may be sufficient to leave this part unmodified,
> keep the updates to gitfaq document, and do nothing else.
Please do leave a pointer here. People who want to automate --signoff do
not visit gitfaq, but will search in the command's manual page.
-- Hannes
^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: Would it make sense to add a commit.signOff config?
2025-12-16 0:17 ` Elijah Newren
2025-12-16 2:29 ` Junio C Hamano
@ 2025-12-16 7:15 ` Johannes Sixt
1 sibling, 0 replies; 20+ messages in thread
From: Johannes Sixt @ 2025-12-16 7:15 UTC (permalink / raw)
To: Elijah Newren, Junio C Hamano
Cc: brian m. carlson, Carlo Marcelo Arenas Belón, Stefan Haller,
Git
Am 16.12.25 um 01:17 schrieb Elijah Newren:
> On Sun, Dec 14, 2025 at 6:00 PM Junio C Hamano <gitster@pobox.com> wrote:
>> --- c/Documentation/gitfaq.adoc
>> +++ w/Documentation/gitfaq.adoc
>> @@ -83,6 +83,21 @@ 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?::
>> + As it makes it harder to argue against one who tells the court
>> + "the log message of the commit ends with a Signed-off-by
>> + trailer by person X, but it is very plausible that it was done
>> + by inertia without person X really intending to certify what
>> + DCO says, hence the Signed-off-by trailer is meaningless", if
>> + we add more publicized ways to add sign-off automatically, Git
>> + does not (and will not) have a configuration variable to
>> + enable the `--signoff` command line option it by default.
>
> This feels kind of hard to parse for me. Maybe it's just the lack of
> sentence breaks, particularly near the end. Let me take a stab at an
> alternative:
>
> 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 would weaken the sign-off’s value and could undermine its credibility
> in legal or contractual situations. To uphold the integrity of a sign-off,
> Git only adds it when explicitly requested, rather than through automatic
> configuration settings.
>
> Maybe the last sentence or two are a bit redundant and could be
> stricken. Anyway, thoughts?
This is much easier to read. I'd shorten the last two sentences to
This could undermine the sign-off’s credibility in legal or contractual
situations.
-- Hannes
^ permalink raw reply [flat|nested] 20+ messages in thread
* [PATCH v2] commit: document that $command.signoff will not be added
2025-12-15 1:59 ` Junio C Hamano
2025-12-15 22:29 ` brian m. carlson
2025-12-16 0:17 ` Elijah Newren
@ 2025-12-16 18:54 ` Junio C Hamano
2025-12-16 19:48 ` Elijah Newren
` (2 more replies)
2 siblings, 3 replies; 20+ messages in thread
From: Junio C Hamano @ 2025-12-16 18:54 UTC (permalink / raw)
To: git; +Cc: Johannes Sixt, Elijah Newren, brian m. carlson
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>
---
* The text is from Elijah and Johannes this round; I am merely
playing a copybot.
Documentation/gitfaq.adoc | 19 +++++++++++++++++++
Documentation/signoff-option.adoc | 4 ++++
2 files changed, 23 insertions(+)
diff --git c/Documentation/gitfaq.adoc w/Documentation/gitfaq.adoc
index f2917d142c..0e40befb77 100644
--- c/Documentation/gitfaq.adoc
+++ w/Documentation/gitfaq.adoc
@@ -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-off’s credibility in legal or
+ contractual situations.
++
+There exists `format.signoff`, but that is a historical mistake, and
+it is not an excuse to pile on more mistakes of the same kind on top.
+
+
Credentials
-----------
diff --git c/Documentation/signoff-option.adoc w/Documentation/signoff-option.adoc
index cddfb225d1..9a80d60f1b 100644
--- c/Documentation/signoff-option.adoc
+++ w/Documentation/signoff-option.adoc
@@ -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.
^ permalink raw reply related [flat|nested] 20+ messages in thread
* Re: [PATCH v2] commit: document that $command.signoff will not be added
2025-12-16 18:54 ` [PATCH v2] commit: document that $command.signoff will not be added Junio C Hamano
@ 2025-12-16 19:48 ` Elijah Newren
2025-12-17 4:47 ` Junio C Hamano
2025-12-17 13:51 ` Johannes Sixt
2025-12-19 7:33 ` Kristoffer Haugsbakk
2 siblings, 1 reply; 20+ messages in thread
From: Elijah Newren @ 2025-12-16 19:48 UTC (permalink / raw)
To: Junio C Hamano; +Cc: git, Johannes Sixt, brian m. carlson
On Tue, Dec 16, 2025 at 10:54 AM Junio C Hamano <gitster@pobox.com> wrote:
>
> 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>
> ---
> * The text is from Elijah and Johannes this round; I am merely
> playing a copybot.
The text was derived from what you wrote, though...
> Documentation/gitfaq.adoc | 19 +++++++++++++++++++
> Documentation/signoff-option.adoc | 4 ++++
> 2 files changed, 23 insertions(+)
>
> diff --git c/Documentation/gitfaq.adoc w/Documentation/gitfaq.adoc
> index f2917d142c..0e40befb77 100644
> --- c/Documentation/gitfaq.adoc
> +++ w/Documentation/gitfaq.adoc
> @@ -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-off’s credibility in legal or
> + contractual situations.
> ++
> +There exists `format.signoff`, but that is a historical mistake, and
> +it is not an excuse to pile on more mistakes of the same kind on top.
> +
> +
> Credentials
> -----------
>
> diff --git c/Documentation/signoff-option.adoc w/Documentation/signoff-option.adoc
> index cddfb225d1..9a80d60f1b 100644
> --- c/Documentation/signoff-option.adoc
> +++ w/Documentation/signoff-option.adoc
> @@ -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.
I like Johannes' edits to the text I had; this commit looks good to me.
^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [PATCH v2] commit: document that $command.signoff will not be added
2025-12-16 19:48 ` Elijah Newren
@ 2025-12-17 4:47 ` Junio C Hamano
2025-12-17 7:40 ` Elijah Newren
0 siblings, 1 reply; 20+ messages in thread
From: Junio C Hamano @ 2025-12-17 4:47 UTC (permalink / raw)
To: Elijah Newren; +Cc: git, Johannes Sixt, brian m. carlson
Elijah Newren <newren@gmail.com> writes:
> I like Johannes' edits to the text I had; this commit looks good to me.
If you liked the final result, it probably should not matter much,
but I cannot tell if you are (obliquely) pointing out that I failed
to grab and apply Johannes's edit or if you are doubly agreeing with
the resulting text in the message you are responding to.
^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [PATCH v2] commit: document that $command.signoff will not be added
2025-12-17 4:47 ` Junio C Hamano
@ 2025-12-17 7:40 ` Elijah Newren
0 siblings, 0 replies; 20+ messages in thread
From: Elijah Newren @ 2025-12-17 7:40 UTC (permalink / raw)
To: Junio C Hamano; +Cc: git, Johannes Sixt, brian m. carlson
On Tue, Dec 16, 2025 at 8:47 PM Junio C Hamano <gitster@pobox.com> wrote:
>
> Elijah Newren <newren@gmail.com> writes:
>
> > I like Johannes' edits to the text I had; this commit looks good to me.
>
> If you liked the final result, it probably should not matter much,
> but I cannot tell if you are (obliquely) pointing out that I failed
> to grab and apply Johannes's edit or if you are doubly agreeing with
> the resulting text in the message you are responding to.
Um, I read Johannes' suggested edit and this patch and thought they
matched. I just re-read them now, and don't see any edits that you
missed. Am I missing something in his email, or another email of his?
Anyway, sorry, I guess I should have inserted a "so" right after the
semicolon ("...had; so, this commit looks good to me.)"
^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [PATCH v2] commit: document that $command.signoff will not be added
2025-12-16 18:54 ` [PATCH v2] commit: document that $command.signoff will not be added Junio C Hamano
2025-12-16 19:48 ` Elijah Newren
@ 2025-12-17 13:51 ` Johannes Sixt
2025-12-17 23:16 ` Junio C Hamano
2025-12-19 7:33 ` Kristoffer Haugsbakk
2 siblings, 1 reply; 20+ messages in thread
From: Johannes Sixt @ 2025-12-17 13:51 UTC (permalink / raw)
To: Junio C Hamano; +Cc: Elijah Newren, brian m. carlson, git
Am 16.12.25 um 19:54 schrieb Junio C Hamano:
> 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>
> ---
> * The text is from Elijah and Johannes this round; I am merely
> playing a copybot.
>
> Documentation/gitfaq.adoc | 19 +++++++++++++++++++
> Documentation/signoff-option.adoc | 4 ++++
> 2 files changed, 23 insertions(+)
>
> diff --git c/Documentation/gitfaq.adoc w/Documentation/gitfaq.adoc
> index f2917d142c..0e40befb77 100644
> --- c/Documentation/gitfaq.adoc
> +++ w/Documentation/gitfaq.adoc
> @@ -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-off’s credibility in legal or
> + contractual situations.
> ++
> +There exists `format.signoff`, but that is a historical mistake, and
> +it is not an excuse to pile on more mistakes of the same kind on top.
I feel that we should s/pile on/pile/, but I am not a native speaker.
This patch looks good with or without this change.
> +
> +
> Credentials
> -----------
>
> diff --git c/Documentation/signoff-option.adoc w/Documentation/signoff-option.adoc
> index cddfb225d1..9a80d60f1b 100644
> --- c/Documentation/signoff-option.adoc
> +++ w/Documentation/signoff-option.adoc
> @@ -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.
-- Hannes
^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [PATCH v2] commit: document that $command.signoff will not be added
2025-12-17 13:51 ` Johannes Sixt
@ 2025-12-17 23:16 ` Junio C Hamano
0 siblings, 0 replies; 20+ messages in thread
From: Junio C Hamano @ 2025-12-17 23:16 UTC (permalink / raw)
To: Johannes Sixt; +Cc: Elijah Newren, brian m. carlson, git
Johannes Sixt <j6t@kdbg.org> writes:
>> +There exists `format.signoff`, but that is a historical mistake, and
>> +it is not an excuse to pile on more mistakes of the same kind on top.
>
> I feel that we should s/pile on/pile/, but I am not a native speaker.
>
> This patch looks good with or without this change.
Thanks. "add more mistakes" should be clear for everybody, so I'll
change the verb.
^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [PATCH v2] commit: document that $command.signoff will not be added
2025-12-16 18:54 ` [PATCH v2] commit: document that $command.signoff will not be added Junio C Hamano
2025-12-16 19:48 ` Elijah Newren
2025-12-17 13:51 ` Johannes Sixt
@ 2025-12-19 7:33 ` Kristoffer Haugsbakk
2025-12-19 12:52 ` Junio C Hamano
2 siblings, 1 reply; 20+ messages in thread
From: Kristoffer Haugsbakk @ 2025-12-19 7:33 UTC (permalink / raw)
To: Junio C Hamano, git; +Cc: Johannes Sixt, Elijah Newren, brian m. carlson
On Tue, Dec 16, 2025, at 19:54, Junio C Hamano wrote:
>[snip]
> ++
> +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.
This is in `next` now but:
s/the gitfaq/in linkgit:gitfaq[7]/
^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [PATCH v2] commit: document that $command.signoff will not be added
2025-12-19 7:33 ` Kristoffer Haugsbakk
@ 2025-12-19 12:52 ` Junio C Hamano
0 siblings, 0 replies; 20+ messages in thread
From: Junio C Hamano @ 2025-12-19 12:52 UTC (permalink / raw)
To: Kristoffer Haugsbakk; +Cc: git, Johannes Sixt, Elijah Newren, brian m. carlson
"Kristoffer Haugsbakk" <kristofferhaugsbakk@fastmail.com> writes:
> On Tue, Dec 16, 2025, at 19:54, Junio C Hamano wrote:
>>[snip]
>> ++
>> +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.
>
> This is in `next` now but:
>
> s/the gitfaq/in linkgit:gitfaq[7]/
Thanks.
^ permalink raw reply [flat|nested] 20+ messages in thread
end of thread, other threads:[~2025-12-19 12:52 UTC | newest]
Thread overview: 20+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-12-14 16:10 Would it make sense to add a commit.signOff config? Stefan Haller
2025-12-14 16:44 ` Carlo Marcelo Arenas Belón
2025-12-14 23:44 ` Junio C Hamano
2025-12-14 23:52 ` Collin Funk
2025-12-15 1:22 ` brian m. carlson
2025-12-15 1:59 ` Junio C Hamano
2025-12-15 22:29 ` brian m. carlson
2025-12-16 1:20 ` Junio C Hamano
2025-12-16 0:17 ` Elijah Newren
2025-12-16 2:29 ` Junio C Hamano
2025-12-16 7:10 ` Johannes Sixt
2025-12-16 7:15 ` Johannes Sixt
2025-12-16 18:54 ` [PATCH v2] commit: document that $command.signoff will not be added Junio C Hamano
2025-12-16 19:48 ` Elijah Newren
2025-12-17 4:47 ` Junio C Hamano
2025-12-17 7:40 ` Elijah Newren
2025-12-17 13:51 ` Johannes Sixt
2025-12-17 23:16 ` Junio C Hamano
2025-12-19 7:33 ` Kristoffer Haugsbakk
2025-12-19 12:52 ` Junio C Hamano
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).