Jeff King <peff@xxxxxxxx> writes: > Cute. It feels like this only goes half-way, though. You really want > per-hunk configurable context. This particular patch was just lucky that > there was only one hunk in the date.c file. "-U16" extends the context lines in both directions by the same number of lines, but most likely you need to extend asymmetrically. In René's patch, for example, much of the body of approxidate_str() is visible in the precontext of the hunk to remove approxidate_relative(), but the body of that function is irrelevant. What he wanted to show was the body of approxidate_careful() and the size of that function is where the -U16 came from. Instead, imagine --extra-context='<range>:<path>' were the way to tell Git to include the specified range of lines in the post context even though they may not have been modified. Then René's patch could have been produced with $ git format-patch -1 \ --extra-context='/^timestamp_t approxidate_careful/,/^}$/:date.c' and would have shown 3 lines of precontext before the removed approxidate_relative(), plus the unchanged approxidate_careful() function in full in the postcontext.