зеркало из https://github.com/microsoft/git.git
format-patch: don't pass on the --quiet flag
The --quiet flag is not meant to be passed on to the diff, as the user always wants the patches to be produced so catch it and pass it to reopen_stdout which decides whether to print the filename or not. Noticed by Paul Gortmaker Signed-off-by: Carlos Martín Nieto <cmn@elego.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Родитель
ff46a49afa
Коммит
250087f2e5
|
@ -623,7 +623,7 @@ static FILE *realstdout = NULL;
|
||||||
static const char *output_directory = NULL;
|
static const char *output_directory = NULL;
|
||||||
static int outdir_offset;
|
static int outdir_offset;
|
||||||
|
|
||||||
static int reopen_stdout(struct commit *commit, struct rev_info *rev)
|
static int reopen_stdout(struct commit *commit, struct rev_info *rev, int quiet)
|
||||||
{
|
{
|
||||||
struct strbuf filename = STRBUF_INIT;
|
struct strbuf filename = STRBUF_INIT;
|
||||||
int suffix_len = strlen(fmt_patch_suffix) + 1;
|
int suffix_len = strlen(fmt_patch_suffix) + 1;
|
||||||
|
@ -639,7 +639,7 @@ static int reopen_stdout(struct commit *commit, struct rev_info *rev)
|
||||||
|
|
||||||
get_patch_filename(commit, rev->nr, fmt_patch_suffix, &filename);
|
get_patch_filename(commit, rev->nr, fmt_patch_suffix, &filename);
|
||||||
|
|
||||||
if (!DIFF_OPT_TST(&rev->diffopt, QUICK))
|
if (!quiet)
|
||||||
fprintf(realstdout, "%s\n", filename.buf + outdir_offset);
|
fprintf(realstdout, "%s\n", filename.buf + outdir_offset);
|
||||||
|
|
||||||
if (freopen(filename.buf, "w", stdout) == NULL)
|
if (freopen(filename.buf, "w", stdout) == NULL)
|
||||||
|
@ -718,7 +718,8 @@ static void print_signature(void)
|
||||||
static void make_cover_letter(struct rev_info *rev, int use_stdout,
|
static void make_cover_letter(struct rev_info *rev, int use_stdout,
|
||||||
int numbered, int numbered_files,
|
int numbered, int numbered_files,
|
||||||
struct commit *origin,
|
struct commit *origin,
|
||||||
int nr, struct commit **list, struct commit *head)
|
int nr, struct commit **list, struct commit *head,
|
||||||
|
int quiet)
|
||||||
{
|
{
|
||||||
const char *committer;
|
const char *committer;
|
||||||
const char *subject_start = NULL;
|
const char *subject_start = NULL;
|
||||||
|
@ -754,7 +755,7 @@ static void make_cover_letter(struct rev_info *rev, int use_stdout,
|
||||||
sha1_to_hex(head->object.sha1), committer, committer);
|
sha1_to_hex(head->object.sha1), committer, committer);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!use_stdout && reopen_stdout(commit, rev))
|
if (!use_stdout && reopen_stdout(commit, rev, quiet))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (commit) {
|
if (commit) {
|
||||||
|
@ -995,6 +996,7 @@ int cmd_format_patch(int argc, const char **argv, const char *prefix)
|
||||||
char *add_signoff = NULL;
|
char *add_signoff = NULL;
|
||||||
struct strbuf buf = STRBUF_INIT;
|
struct strbuf buf = STRBUF_INIT;
|
||||||
int use_patch_format = 0;
|
int use_patch_format = 0;
|
||||||
|
int quiet = 0;
|
||||||
const struct option builtin_format_patch_options[] = {
|
const struct option builtin_format_patch_options[] = {
|
||||||
{ OPTION_CALLBACK, 'n', "numbered", &numbered, NULL,
|
{ OPTION_CALLBACK, 'n', "numbered", &numbered, NULL,
|
||||||
"use [PATCH n/m] even with a single patch",
|
"use [PATCH n/m] even with a single patch",
|
||||||
|
@ -1050,6 +1052,8 @@ int cmd_format_patch(int argc, const char **argv, const char *prefix)
|
||||||
PARSE_OPT_OPTARG, thread_callback },
|
PARSE_OPT_OPTARG, thread_callback },
|
||||||
OPT_STRING(0, "signature", &signature, "signature",
|
OPT_STRING(0, "signature", &signature, "signature",
|
||||||
"add a signature"),
|
"add a signature"),
|
||||||
|
OPT_BOOLEAN(0, "quiet", &quiet,
|
||||||
|
"don't print the patch filenames"),
|
||||||
OPT_END()
|
OPT_END()
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -1259,7 +1263,7 @@ int cmd_format_patch(int argc, const char **argv, const char *prefix)
|
||||||
if (thread)
|
if (thread)
|
||||||
gen_message_id(&rev, "cover");
|
gen_message_id(&rev, "cover");
|
||||||
make_cover_letter(&rev, use_stdout, numbered, numbered_files,
|
make_cover_letter(&rev, use_stdout, numbered, numbered_files,
|
||||||
origin, nr, list, head);
|
origin, nr, list, head, quiet);
|
||||||
total++;
|
total++;
|
||||||
start_number--;
|
start_number--;
|
||||||
}
|
}
|
||||||
|
@ -1305,7 +1309,7 @@ int cmd_format_patch(int argc, const char **argv, const char *prefix)
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!use_stdout && reopen_stdout(numbered_files ? NULL : commit,
|
if (!use_stdout && reopen_stdout(numbered_files ? NULL : commit,
|
||||||
&rev))
|
&rev, quiet))
|
||||||
die(_("Failed to create output files"));
|
die(_("Failed to create output files"));
|
||||||
shown = log_tree_commit(&rev, commit);
|
shown = log_tree_commit(&rev, commit);
|
||||||
free(commit->buffer);
|
free(commit->buffer);
|
||||||
|
|
Загрузка…
Ссылка в новой задаче