Browse Source

Give short-hands to --pretty=tformat:%formatstring

Allow --pretty="%h %s" (and --format="%h %s") as shorthand for an often
used option --pretty=tformat:"%h %s".

Signed-off-by: Nanako Shiraishi <nanako3@lavabit.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Nanako Shiraishi 16 years ago committed by Junio C Hamano
parent
commit
36407548a2
  1. 9
      Documentation/pretty-formats.txt
  2. 20
      pretty.c

9
Documentation/pretty-formats.txt

@ -152,3 +152,12 @@ $ git log -2 --pretty=tformat:%h 4da45bef \
4da45be 4da45be
7134973 7134973
--------------------- ---------------------
+
In addition, any unrecognized string that has a `%` in it is interpreted
as if it has `tformat:` in front of it. For example, these two are
equivalent:
+
---------------------
$ git log -2 --pretty=tformat:%h 4da45bef
$ git log -2 --pretty=%h 4da45bef
---------------------

20
pretty.c

@ -10,6 +10,15 @@


static char *user_format; static char *user_format;


static void save_user_format(struct rev_info *rev, const char *cp, int is_tformat)
{
free(user_format);
user_format = xstrdup(cp);
if (is_tformat)
rev->use_terminator = 1;
rev->commit_format = CMIT_FMT_USERFORMAT;
}

void get_commit_format(const char *arg, struct rev_info *rev) void get_commit_format(const char *arg, struct rev_info *rev)
{ {
int i; int i;
@ -33,12 +42,7 @@ void get_commit_format(const char *arg, struct rev_info *rev)
return; return;
} }
if (!prefixcmp(arg, "format:") || !prefixcmp(arg, "tformat:")) { if (!prefixcmp(arg, "format:") || !prefixcmp(arg, "tformat:")) {
const char *cp = strchr(arg, ':') + 1; save_user_format(rev, strchr(arg, ':') + 1, arg[0] == 't');
free(user_format);
user_format = xstrdup(cp);
if (arg[0] == 't')
rev->use_terminator = 1;
rev->commit_format = CMIT_FMT_USERFORMAT;
return; return;
} }
for (i = 0; i < ARRAY_SIZE(cmt_fmts); i++) { for (i = 0; i < ARRAY_SIZE(cmt_fmts); i++) {
@ -50,6 +54,10 @@ void get_commit_format(const char *arg, struct rev_info *rev)
return; return;
} }
} }
if (strchr(arg, '%')) {
save_user_format(rev, arg, 1);
return;
}


die("invalid --pretty format: %s", arg); die("invalid --pretty format: %s", arg);
} }

Loading…
Cancel
Save