This patchset teaches range-diff and format-patch to pass `--notes` options down to the `git log` machinery. This should make the behaviour more configurable for users who either don't want notes to be displayed or want multiple notes refs to be displayed. Changes since v2: * Changed --notes=<treeish> to --notes=<ref> * Added "t3206: disable parameter substitution in heredoc" * Updated the commit message of "range-diff: pass through --notes to `git log`" Changes since v1: * Complete overhaul of approach Denton Liu (10): argv-array: add space after `while` rev-list-options.txt: remove reference to --show-notes pretty-options.txt: --notes accepts a ref instead of treeish t3206: remove spaces after redirect operators t3206: disable parameter substitution in heredoc t3206: s/expected/expect/ t3206: range-diff compares logs with commit notes range-diff: output `## Notes ##` header range-diff: pass through --notes to `git log` format-patch: pass notes configuration to range-diff Documentation/git-range-diff.txt | 6 +- Documentation/pretty-options.txt | 8 +- Documentation/rev-list-options.txt | 2 +- argv-array.c | 2 +- builtin/log.c | 24 ++- builtin/range-diff.c | 6 +- log-tree.c | 2 +- range-diff.c | 21 ++- range-diff.h | 4 +- t/t3206-range-diff.sh | 266 +++++++++++++++++++++++++---- 10 files changed, 291 insertions(+), 50 deletions(-) Range-diff against v2: 1: 396ac06b0d = 1: fd78742570 argv-array: add space after `while` 2: 8cc7c8fe72 = 2: e1b023a6fc rev-list-options.txt: remove reference to --show-notes -: ---------- > 3: 4989956f12 pretty-options.txt: --notes accepts a ref instead of treeish 3: 22f5f07ace = 4: 85fcacf3f9 t3206: remove spaces after redirect operators -: ---------- > 5: 855a3df542 t3206: disable parameter substitution in heredoc 4: 922db36e7e = 6: 92df18b261 t3206: s/expected/expect/ 5: d8ecda2d5e ! 7: 093d32ac4f t3206: demonstrate current notes behavior @@ Metadata Author: Denton Liu <liu.denton@xxxxxxxxx> ## Commit message ## - t3206: demonstrate current notes behavior + t3206: range-diff compares logs with commit notes The test suite had a blindspot where it did not check the behavior of range-diff and format-patch when notes were present. Cover this 6: 7dd0b93b0b = 8: 2d1c849ecc range-diff: output `## Notes ##` header 7: 587a02a39c ! 9: 9c144e14c5 range-diff: passthrough --[no-]notes to `git log` @@ Metadata Author: Denton Liu <liu.denton@xxxxxxxxx> ## Commit message ## - range-diff: passthrough --[no-]notes to `git log` + range-diff: pass through --notes to `git log` When a commit being range-diff'd has a note attached to it, the note will be compared as well. However, if a user has multiple notes refs or if they want to suppress notes from being printed, there is currently no way to do this. - Passthrough `---no--notes` to the `git log` call so that this option is - customizable. + Pass through `--[no-]notes[=<ref>]` to the `git log` call so that this + option is customizable. ## Documentation/git-range-diff.txt ## @@ Documentation/git-range-diff.txt: to revert to color all lines according to the outer diff markers See the ``Algorithm`` section below for an explanation why this is needed. -+--[no-]notes[=<treeish>]:: ++--[no-]notes[=<ref>]:: + This flag is passed to the `git log` program + (see linkgit:git-log[1]) that generates the patches. + 8: ce8cff7d0c = 10: 86318b3fe7 format-patch: pass notes configuration to range-diff -- 2.24.0.450.g7a9a4598a9