I'm sending out only the last three parts, as the changes necessary to 03/07 that incorrectly used the variant without _default() to overwrite options->prefix should be trivally obvious. 05/07 uses the _default() variant so that the caller can react differently to "--relative" from "--relative=" correctly. 06/07 is an update to t4045, so that the change made in 07/07 becomes readable. 07/07 updates the test to verify the change in 05/07. I just made sure that these tests catch it if we deliberately reintroduce the broken version from Christian's series on top. Junio C Hamano (3): diff: use skip-to-optional-val in parsing --relative t4045: reindent to make helpers readable t4045: test 'diff --relative' for real builtin/index-pack.c | 11 ++--- diff.c | 50 +++++++-------------- git-compat-util.h | 23 ++++++++++ strbuf.c | 20 +++++++++ t/t4045-diff-relative.sh | 111 ++++++++++++++++++++++++++++------------------- 5 files changed, 128 insertions(+), 87 deletions(-) -- 2.15.1-480-gbc5668f98a