Re: misleading diff-hunk header
- From
- Tim Chase <git@tim.thechases.com>
- Date
- Aug 21, 2012, 15:42 UTC
- Message-ID
- <5033AC55.8080405@tim.thechases.com>
- In-Reply-To
- <87a9xoi82i.fsf@thomas.inf.ethz.ch>
On 08/21/12 10:22, Thomas Rast wrote:
Show 18 quoted lines
> Tim Chase <git@tim.thechases.com> writes:
>
>> diff.{type}.xfuncname seems to start searching backwards in
>> from the beginning of the hunk, not the first differing line.
> [...]
>> @@ -4,4 +4,5 @@ int call_me(int maybe)
>>
>> int main()
>> {
>> + return 0;
>> }
>>
>> misleadingly suggesting that the change occurred in the call_me()
>> function, rather than in main()
>
> I think that's intentional, and matches what 'diff -p' does. It gives
> you the context before the hunk. After all, if a new function starts in
> the leading context lines, you can see that in the usual diff data.Okay...I tested "diff -p" and can't argue (much) with historical adherence. It just makes it hard for me to gather some stats on the functions that changed, and requires that I look in more than one place (both in the header, and in the leading context) rather than having a single authoritative place to grep.
Then again, "diff -p" only seems to support C functions, while git supports bibtex, cpp, html, java, objc, pascal, php, python, ruby, and tex out-of-the-box, with the option to build your own function-finder, so pure adherence to history gets a little muddied.
Thanks for your thoughts,
-tkc