This patch series implements decoration with pseudorefs and adds three
slots to the color.decorate.<slot> config:
- 'symbol' for coloring the punctuation symbols used around the refs in
decorations, which currently use the same color as the commit hash.
- 'ref' for coloring refs other than branches, remote-tracking branches,
tags and the stash, which currently are not colored when included in
decorations through custom decoration filter options.
- 'pseudoref' for coloring pseudorefs such as ORIG_HEAD or MERGE_HEAD.
CI: https://github.com/ak2/git/actions/runs/6618230811
Andy Koppe (7):
config: restructure color.decorate documentation
log: use designated inits for decoration_colors
log: add color.decorate.symbol config variable
log: add color.decorate.ref config variable
refs: add pseudorefs array and iteration functions
refs: exempt pseudorefs from pattern prefixing
log: add color.decorate.pseudoref config variable
Documentation/config/color.txt | 32 +++++++-
commit.h | 3 +
log-tree.c | 57 ++++++++++----
refs.c | 59 +++++++++++++--
refs.h | 5 ++
..._--decorate=full_--clear-decorations_--all | 4 +-
...f.log_--decorate_--clear-decorations_--all | 4 +-
t/t4202-log.sh | 21 +++---
t/t4207-log-decoration-colors.sh | 74 +++++++++++--------
9 files changed, 192 insertions(+), 67 deletions(-)