On 11.01.2013 09:34, Peter Krempa wrote:
On 01/11/13 01:40, Eric Blake wrote:
> I've noticed a number of people sending patches with file
> renames not compressed, so we might as well document how to
> set this up. (Git won't do it by default, for back-compat
> reasons)
>
> * docs/hacking.html.in: Add git config tip.
> * HACKING: Regenerate.
> ---
> HACKING | 7 ++++++-
> docs/hacking.html.in | 8 ++++++--
> 2 files changed, 12 insertions(+), 3 deletions(-)
>
[...]
>
> diff --git a/docs/hacking.html.in b/docs/hacking.html.in
> index 17136f0..69520f0 100644
> --- a/docs/hacking.html.in
> +++ b/docs/hacking.html.in
> @@ -9,8 +9,12 @@
> <li>Discuss any large changes on the mailing list first. Post
> patches
> early and listen to feedback.</li>
>
> - <li><p>Post patches in unified diff format. A command similar
> to this
> - should work:</p>
> + <li><p>Post patches in unified diff format, with git rename
> + detection enabled. You need a one-time setup of:</p>
> +<pre>
> + git config diff.renames true
> +</pre>
> + <p>After that, a command similar to this should work:</p>
> <pre>
> diff -urp libvirt.orig/ libvirt.modified/ >
> libvirt-myfeature.patch
> </pre>
>
It might also be beneficial to instruct the users to use the patience
algorithm for diffs (especially when moving chunks of code around). But
the issue with that is that it can't be enabled in the config (well
apart from using an alias).
OFF TOPIC
I was trying to get patch in the git that does just this. I wonder where
it got stuck. Gonna resend - thanks for reminding.
Michal