зеркало из https://github.com/microsoft/git.git
Add custom subject prefix support to format-patch (take 3)
Add a new option to git-format-patch, entitled --subject-prefix that allows control of the subject prefix '[PATCH]'. Using this option, the text 'PATCH' is replaced with whatever input is provided to the option. This allows easily generating patches like '[PATCH 2.6.21-rc3]' or properly numbered series like '[-mm3 PATCH N/M]'. This patch provides the implementation and documentation. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
Родитель
566f5b217d
Коммит
2d9e4a47d1
|
@ -10,11 +10,12 @@ SYNOPSIS
|
|||
--------
|
||||
[verse]
|
||||
'git-format-patch' [-n | -k] [-o <dir> | --stdout] [--thread]
|
||||
[--attach[=<boundary>] | --inline[=<boundary>]]
|
||||
[-s | --signoff] [<common diff options>] [--start-number <n>]
|
||||
[--in-reply-to=Message-Id] [--suffix=.<sfx>]
|
||||
[--ignore-if-in-upstream]
|
||||
<since>[..<until>]
|
||||
[--attach[=<boundary>] | --inline[=<boundary>]]
|
||||
[-s | --signoff] [<common diff options>] [--start-number <n>]
|
||||
[--in-reply-to=Message-Id] [--suffix=.<sfx>]
|
||||
[--ignore-if-in-upstream]
|
||||
[--subject-prefix=Subject-Prefix]
|
||||
<since>[..<until>]
|
||||
|
||||
DESCRIPTION
|
||||
-----------
|
||||
|
@ -98,6 +99,12 @@ include::diff-options.txt[]
|
|||
patches being generated, and any patch that matches is
|
||||
ignored.
|
||||
|
||||
--subject-prefix=<Subject-Prefix>::
|
||||
Instead of the standard '[PATCH]' prefix in the subject
|
||||
line, instead use '[<Subject-Prefix>]'. This
|
||||
allows for useful naming of a patch series, and can be
|
||||
combined with the --numbered option.
|
||||
|
||||
--suffix=.<sfx>::
|
||||
Instead of using `.patch` as the suffix for generated
|
||||
filenames, use specifed suffix. A common alternative is
|
||||
|
|
|
@ -417,6 +417,7 @@ int cmd_format_patch(int argc, const char **argv, const char *prefix)
|
|||
int numbered = 0;
|
||||
int start_number = -1;
|
||||
int keep_subject = 0;
|
||||
int subject_prefix = 0;
|
||||
int ignore_if_in_upstream = 0;
|
||||
int thread = 0;
|
||||
const char *in_reply_to = NULL;
|
||||
|
@ -434,6 +435,7 @@ int cmd_format_patch(int argc, const char **argv, const char *prefix)
|
|||
rev.ignore_merges = 1;
|
||||
rev.diffopt.msg_sep = "";
|
||||
rev.diffopt.recursive = 1;
|
||||
rev.subject_prefix = "PATCH";
|
||||
|
||||
rev.extra_headers = extra_headers;
|
||||
|
||||
|
@ -509,8 +511,10 @@ int cmd_format_patch(int argc, const char **argv, const char *prefix)
|
|||
if (i == argc)
|
||||
die("Need a Message-Id for --in-reply-to");
|
||||
in_reply_to = argv[i];
|
||||
}
|
||||
else if (!prefixcmp(argv[i], "--suffix="))
|
||||
} else if (!prefixcmp(argv[i], "--subject-prefix=")) {
|
||||
subject_prefix = 1;
|
||||
rev.subject_prefix = argv[i] + 17;
|
||||
} else if (!prefixcmp(argv[i], "--suffix="))
|
||||
fmt_patch_suffix = argv[i] + 9;
|
||||
else
|
||||
argv[j++] = argv[i];
|
||||
|
@ -521,6 +525,8 @@ int cmd_format_patch(int argc, const char **argv, const char *prefix)
|
|||
start_number = 1;
|
||||
if (numbered && keep_subject)
|
||||
die ("-n and -k are mutually exclusive.");
|
||||
if (keep_subject && subject_prefix)
|
||||
die ("--subject-prefix and -k are mutually exclusive.");
|
||||
|
||||
argc = setup_revisions(argc, argv, &rev, "HEAD");
|
||||
if (argc > 1)
|
||||
|
|
14
log-tree.c
14
log-tree.c
|
@ -165,14 +165,20 @@ void show_log(struct rev_info *opt, const char *sep)
|
|||
if (opt->total > 0) {
|
||||
static char buffer[64];
|
||||
snprintf(buffer, sizeof(buffer),
|
||||
"Subject: [PATCH %0*d/%d] ",
|
||||
"Subject: [%s %0*d/%d] ",
|
||||
opt->subject_prefix,
|
||||
digits_in_number(opt->total),
|
||||
opt->nr, opt->total);
|
||||
subject = buffer;
|
||||
} else if (opt->total == 0)
|
||||
subject = "Subject: [PATCH] ";
|
||||
else
|
||||
} else if (opt->total == 0) {
|
||||
static char buffer[256];
|
||||
snprintf(buffer, sizeof(buffer),
|
||||
"Subject: [%s] ",
|
||||
opt->subject_prefix);
|
||||
subject = buffer;
|
||||
} else {
|
||||
subject = "Subject: ";
|
||||
}
|
||||
|
||||
printf("From %s Mon Sep 17 00:00:00 2001\n", sha1);
|
||||
if (opt->message_id)
|
||||
|
|
|
@ -78,6 +78,7 @@ struct rev_info {
|
|||
const char *add_signoff;
|
||||
const char *extra_headers;
|
||||
const char *log_reencode;
|
||||
const char *subject_prefix;
|
||||
int no_inline;
|
||||
|
||||
/* Filter by commit log message */
|
||||
|
|
Загрузка…
Ссылка в новой задаче