X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?a=blobdiff_plain;f=0004-check-ref-format-New-report-errors-option.patch;fp=0004-check-ref-format-New-report-errors-option.patch;h=c85ad38ca52c95ba6a431508d12709105baa7ccd;hb=327cc1c0c592770eaf22aeebbded324e8122b614;hp=0000000000000000000000000000000000000000;hpb=93a7e5d7bd541482126cbecdd3589ef4b2e15c14;p=version-charset-test.git diff --git a/0004-check-ref-format-New-report-errors-option.patch b/0004-check-ref-format-New-report-errors-option.patch new file mode 100644 index 0000000..c85ad38 --- /dev/null +++ b/0004-check-ref-format-New-report-errors-option.patch @@ -0,0 +1,85 @@ +From 5f0a31143d8e1c3740e81ad948c8ae670a322dcc Mon Sep 17 00:00:00 2001 +From: Ian Jackson +Date: Fri, 4 Nov 2016 17:40:49 +0000 +Subject: [PATCH 4/5] check-ref-format: New --report-errors option + +Signed-off-by: Ian Jackson +--- + Documentation/git-check-ref-format.txt | 8 ++++++-- + builtin/check-ref-format.c | 10 ++++++++-- + 2 files changed, 14 insertions(+), 4 deletions(-) + +diff --git a/Documentation/git-check-ref-format.txt b/Documentation/git-check-ref-format.txt +index 8611a99..e9a2657 100644 +--- a/Documentation/git-check-ref-format.txt ++++ b/Documentation/git-check-ref-format.txt +@@ -8,10 +8,10 @@ git-check-ref-format - Ensures that a reference name is well formed + SYNOPSIS + -------- + [verse] +-'git check-ref-format' [--normalize] ++'git check-ref-format' [--report-errors] [--normalize] + [--[no-]allow-onelevel] [--refspec-pattern] + +-'git check-ref-format' --branch ++'git check-ref-format' [--report-errors] --branch + + DESCRIPTION + ----------- +@@ -105,6 +105,10 @@ OPTIONS + with a status of 0. (`--print` is a deprecated way to spell + `--normalize`.) + ++--report-errors:: ++ If any ref does not check OK, print a message to stderr. ++ (By default, git check-ref-format is silent.) ++ + + EXAMPLES + -------- +diff --git a/builtin/check-ref-format.c b/builtin/check-ref-format.c +index 020ebe8..559d5c2 100644 +--- a/builtin/check-ref-format.c ++++ b/builtin/check-ref-format.c +@@ -9,7 +9,7 @@ + + static const char builtin_check_ref_format_usage[] = + "git check-ref-format [--normalize] [] \n" +-" or: git check-ref-format --branch "; ++" or: git check-ref-format [] --branch "; + + /* + * Return a copy of refname but with leading slashes removed and runs +@@ -51,6 +51,7 @@ static int check_ref_format_branch(const char *arg) + static int normalize = 0; + static int check_branch = 0; + static int flags = 0; ++static int report_errors = 0; + + static int check_one_ref_format(const char *refname) + { +@@ -61,8 +62,11 @@ static int check_one_ref_format(const char *refname) + got = check_branch + ? check_ref_format_branch(refname) + : check_refname_format(refname, flags); +- if (got) ++ if (got) { ++ if (report_errors) ++ fprintf(stderr, "bad ref format: %s\n", refname); + return 1; ++ } + if (normalize) { + printf("%s\n", refname); + free((void*)refname); +@@ -87,6 +91,8 @@ int cmd_check_ref_format(int argc, const char **argv, const char *prefix) + flags |= REFNAME_REFSPEC_PATTERN; + else if (!strcmp(argv[i], "--branch")) + check_branch = 1; ++ else if (!strcmp(argv[i], "--report-errors")) ++ report_errors = 1; + else + usage(builtin_check_ref_format_usage); + } +-- +2.10.1 +