Re: Counter-intuitive result from diff -C --stat
From: Junio C Hamano <hidden>
Date: 2017-01-01 01:15:49
Mike Hommey [off-list ref] writes:
Hi, So I was checking out differences between two branches, accounting for file moves with -C, and was surprised by the number of insertions and deletions that it indicated, because it was telling me I had removed more than I added, which I really don't think is true. I took a closer look, and what happens is that I had a lot of stuff in a __init__.py file that I moved to another file, while keeping a now new, empty, __init__.py file. Which means while diff counts the deletions from __init__.py, it doesn't count the additions from the move because it is a move, leading to a counter-intuitive result.
Intuition is in the eyes of observer. A pairing of the original and the result you saw might be not very useful (which I have no opinion on), but in the context of the chosen pairing of the original and the result, in order to produce the final result, you started from a copy of the original and removed quite a lot while adding just a bit, so what you saw was an outcome that was deliberately designed.