git/interdiff.c
Eric Sunshine 126facf821 format-patch: add --interdiff option to embed diff in cover letter
When submitting a revised version of a patch series, it can be helpful
(to reviewers) to include a summary of changes since the previous
attempt in the form of an interdiff, however, doing so involves manually
copy/pasting the diff into the cover letter.

Add an --interdiff option to automate this process. The argument to
--interdiff specifies the tip of the previous attempt against which to
generate the interdiff. For example:

    git format-patch --cover-letter --interdiff=v1 -3 v2

The previous attempt and the patch series being formatted must share a
common base.

Signed-off-by: Eric Sunshine <sunshine@sunshineco.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2018-07-23 12:50:06 -07:00

18 lines
374 B
C

#include "cache.h"
#include "commit.h"
#include "revision.h"
#include "interdiff.h"
void show_interdiff(struct rev_info *rev)
{
struct diff_options opts;
memcpy(&opts, &rev->diffopt, sizeof(opts));
opts.output_format = DIFF_FORMAT_PATCH;
diff_setup_done(&opts);
diff_tree_oid(rev->idiff_oid1, rev->idiff_oid2, "", &opts);
diffcore_std(&opts);
diff_flush(&opts);
}