Browse Source

Add `%B' in format strings for raw commit body in `git log' and friends

Also update the documentation text and add a test.

Signed-off-by: Eli Barzilay <eli@barzilay.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Eli Barzilay 15 years ago committed by Junio C Hamano
parent
commit
1367b12ad6
  1. 1
      Documentation/pretty-formats.txt
  2. 4
      pretty.c
  3. 9
      t/t6006-rev-list-format.sh

1
Documentation/pretty-formats.txt

@ -123,6 +123,7 @@ The placeholders are: @@ -123,6 +123,7 @@ The placeholders are:
- '%s': subject
- '%f': sanitized subject line, suitable for a filename
- '%b': body
- '%B': raw body (unwrapped subject and body)
- '%N': commit notes
- '%gD': reflog selector, e.g., `refs/stash@\{1\}`
- '%gd': shortened reflog selector, e.g., `stash@\{1\}`

4
pretty.c

@ -797,6 +797,10 @@ static size_t format_commit_one(struct strbuf *sb, const char *placeholder, @@ -797,6 +797,10 @@ static size_t format_commit_one(struct strbuf *sb, const char *placeholder,
case 'e': /* encoding */
strbuf_add(sb, msg + c->encoding.off, c->encoding.len);
return 1;
case 'B': /* raw body */
/* message_off is always left at the initial newline */
strbuf_addstr(sb, msg + c->message_off + 1);
return 1;
}

/* Now we need to parse the commit message. */

9
t/t6006-rev-list-format.sh

@ -101,6 +101,15 @@ commit 131a310eb913d107dd3c09a65d1651175898735d @@ -101,6 +101,15 @@ commit 131a310eb913d107dd3c09a65d1651175898735d
commit 86c75cfd708a0e5868dc876ed5b8bb66c80b4873
EOF

test_format raw-body %B <<'EOF'
commit 131a310eb913d107dd3c09a65d1651175898735d
changed foo

commit 86c75cfd708a0e5868dc876ed5b8bb66c80b4873
added foo

EOF

test_format colors %Credfoo%Cgreenbar%Cbluebaz%Cresetxyzzy <<'EOF'
commit 131a310eb913d107dd3c09a65d1651175898735d
foobarbazxyzzy

Loading…
Cancel
Save