diff options
-rw-r--r-- | Documentation/git-for-each-ref.txt | 17 | ||||
-rw-r--r-- | builtin-name-rev.c | 8 |
2 files changed, 15 insertions, 10 deletions
diff --git a/Documentation/git-for-each-ref.txt b/Documentation/git-for-each-ref.txt index f1f90cca62..6325ff9a68 100644 --- a/Documentation/git-for-each-ref.txt +++ b/Documentation/git-for-each-ref.txt @@ -8,9 +8,8 @@ git-for-each-ref - Output information on each ref SYNOPSIS -------- [verse] -'git-for-each-ref' [--count=<count>]\* - [--shell|--perl|--python|--tcl] - [--sort=<key>]\* [--format=<format>] [<pattern>] +'git-for-each-ref' [--count=<count>] [--shell|--perl|--python|--tcl] + [--sort=<key>]\* [--format=<format>] [<pattern>...] DESCRIPTION ----------- @@ -32,8 +31,9 @@ OPTIONS <key>:: A field name to sort on. Prefix `-` to sort in descending order of the value. When unspecified, - `refname` is used. More than one sort keys can be - given. + `refname` is used. You may use the --sort=<key> option + multiple times, in which case the last key becomes the primary + key. <format>:: A string that interpolates `%(fieldname)` from the @@ -48,9 +48,10 @@ OPTIONS `%09` to `\t` (TAB) and `%0a` to `\n` (LF). <pattern>:: - If given, the name of the ref is matched against this - using fnmatch(3). Refs that do not match the pattern - are not shown. + If one or more patterns are given, only refs are shown that + match againt at least one pattern, either using fnmatch(3) or + literally, in the latter case matching completely or from the + beginning up to a slash. --shell, --perl, --python, --tcl:: If given, strings that substitute `%(fieldname)` diff --git a/builtin-name-rev.c b/builtin-name-rev.c index cde5de56fa..f153da012f 100644 --- a/builtin-name-rev.c +++ b/builtin-name-rev.c @@ -280,9 +280,13 @@ int cmd_name_rev(int argc, const char **argv, const char *prefix) int i, max; max = get_max_object_index(); - for (i = 0; i < max; i++) - show_name(get_indexed_object(i), NULL, + for (i = 0; i < max; i++) { + struct object *obj = get_indexed_object(i); + if (!obj) + continue; + show_name(obj, NULL, always, allow_undefined, data.name_only); + } } else { int i; for (i = 0; i < revs.nr; i++) |