V4 mainly addresses Junio's comments on V3, Changes include:
- Polish up the documentation to make output files git-format-patch.1 and
git-format-patch.html more sensible.
- Add error handling when base commit is not ancestor of revision list
specified in cmdline.
- Specify topo order to do the traverse work, and show the base tree info
block in a more natural sequence.
- If --base=auto is set and there is more than one best merge base, instead
of picking up a random one, it will error out for they may be complicated
situation such as criss-cross merges.
- Add tests for the --base option and format.base configuration.
- Fix a segfault error due to bases structure hasn't been initialized when
--base option is not set, Thanks for Ramsay's report.
Xiaolong Ye (4):
patch-ids: make commit_patch_id() a public helper function
format-patch: add '--base' option to record base tree info
format-patch: introduce --base=auto option
format-patch: introduce format.base configuration
Documentation/git-format-patch.txt | 64 +++++++++++++++++++
builtin/log.c | 123 +++++++++++++++++++++++++++++++++++++
patch-ids.c | 2 +-
patch-ids.h | 2 +
t/t4014-format-patch.sh | 48 +++++++++++++++
5 files changed, 238 insertions(+), 1 deletion(-)