Felipe Contreras <[email protected]> writes:
> Also, add a new option: 'auto', so if there's more than one patch, the
> cover letter is generated, otherwise it's not.
>
> Signed-off-by: Felipe Contreras <[email protected]>
> ---
> Documentation/config.txt | 6 ++++++
> Documentation/git-format-patch.txt | 5 +++--
> builtin/log.c | 22 ++++++++++++++++------
> 3 files changed, 25 insertions(+), 8 deletions(-)
>
> diff --git a/Documentation/config.txt b/Documentation/config.txt
> index c8e2178..c10195c 100644
> --- a/Documentation/config.txt
> +++ b/Documentation/config.txt
> @@ -1092,6 +1092,12 @@ format.signoff::
> the rights to submit this work under the same open source license.
> Please see the 'SubmittingPatches' document for further discussion.
>
> +format.cover-letter::
I thought I saw somebody already pointed out that this was wrong.
> + Allows to configure the --cover-letter option of format-patch by
> + default.
> + In addition, you can set it to 'auto' to automatically
> + determine based on the number of patches (generate if there's more than
> + one).
I find this somewhat a strange phrasing. It _sets_ the default for
the cover-letter option, either to true or false or auto, so there
is no "in addition" about it.
Perhaps
format.coverLetter::
Setting this variable to `true` (or `false`) tells the
`format-patch` command to pretend the `--cover-letter` (or
`--no-cover-letter`) was given from the command line. When
set to `auto`, `format-patch` assumes `--cover-letter` if
and only if it is working on more than one commit.
or something?
It also is somewhat strange why the command line argument does not
accept `--cover-letter=auto` option. In general, a configuration
variable should not be more flexible mechanism than what the command
line could give the user. As I already said, I think that would be
a better longer-term default, and that makes it even more stand-out.
> @@ -1360,6 +1366,8 @@ int cmd_format_patch(int argc, const char **argv, const
> char *prefix)
> numbered = 1;
> if (numbered)
> rev.total = total + start_number - 1;
> + if (cover_letter == -1)
> + cover_letter = (total > 1);
> if (in_reply_to || thread || cover_letter)
> rev.ref_message_ids = xcalloc(1, sizeof(struct string_list));
> if (in_reply_to) {
> @@ -1371,6 +1379,8 @@ int cmd_format_patch(int argc, const char **argv, const
> char *prefix)
> if (cover_letter) {
> if (thread)
> gen_message_id(&rev, "cover");
> + if (!branch_name)
> + branch_name = find_branch_name(&rev);
> make_cover_letter(&rev, use_stdout,
> origin, nr, list, head, branch_name, quiet);
> total++;
This part is nicely done, thanks to the previous two steps. You
might even want to remove the call to the find_branch_name() helper
function from here, and instead call it from make_cover_letter()
when branch_name is not yet there.
We would need tests to make sure future changes will not break this.
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html