On 07/21/2012 09:08 AM, Jim Meyering wrote:
Eric Blake wrote:
...
> This [change-set] LOOKS huge, but is really just a couple of 'git mv'
> commands and a change to nodeinfotest.c. Scroll to the bottom for
> the real change; I've shortened boring parts of this mail to get past
> the 100k mail cap enforced by the list.
If you set git diff's "renames" option, (i.e., globally):
git config --global diff.renames true
I've already done that (2 years ago).
then "git diff", format-patch, etc. output is much more readable,
i.e., it excludes the "remove-entire-file" then "add-same-contents"
diff output. Instead it just prints something like this:
diff --git a/old b/new
similarity index 100%
rename from old
rename to new
Nope. Even WITH diff.renames turned on, my patch was more than 100k,
because doing a single 'git mv' of a directory with hundreds of children
resulted in hundreds of these 4-line rename notations, which added up fast.
--
Eric Blake eblake(a)redhat.com +1-919-301-3266
Libvirt virtualization library
http://libvirt.org