* Re: Feature request: Reduce amount of diff in patch
2017-11-28 16:09 Feature request: Reduce amount of diff in patch KES
@ 2017-11-28 17:24 ` Kaartic Sivaraam
2017-12-07 20:13 ` Stefan Beller
1 sibling, 0 replies; 4+ messages in thread
From: Kaartic Sivaraam @ 2017-11-28 17:24 UTC (permalink / raw)
To: KES; +Cc: git
On Tue, 2017-11-28 at 18:09 +0200, KES wrote:
> Hi.
>
> I get often patches which can be minimized:
>
I guess the one below can't be (see below).
> @@ -60,11 +64,8 @@ sub _get_filter {
> address => { -like => \[ '?', "%$search%" ] },
> company => { -like => \[ '?', "%$search%" ] },
> country_code => { '=' => \[ 'UPPER(?)' => $search ] },
> - ]);
>
> - $users = $users->search( $filter, {
> - prefetch => { Packages => { Ips => { Subnet => { Server => 'Locality' }}}},
> - });
> + ]);
>
>
> return $users;
>
> This patch can be minimized to:
>
> @@ -60,11 +64,8 @@ sub _get_filter {
> address => { -like => \[ '?', "%$search%" ] },
> company => { -like => \[ '?', "%$search%" ] },
> country_code => { '=' => \[ 'UPPER(?)' => $search ] },
> ]);
>
> - $users = $users->search( $filter, {
> - prefetch => { Packages => { Ips => { Subnet => { Server => 'Locality' }}}},
> - });
>
>
> return $users;
>
> May you please fix the git to generate minimized patches?
>
You seemed to have overlooked the empty line above the ']);' in the
original patch. So, your minimized version isn't actually equivalent to
the original one. Further, when trying to recreate your patch I get the
following,
diff --git a/diff-test b/diff-test
index 1d5dc1b..f3ec38f 100644
--- a/diff-test
+++ b/diff-test
@@ -1,10 +1,8 @@
address => { -like => \[ '?', "%$search%" ] },
company => { -like => \[ '?', "%$search%" ] },
country_code => { '=' => \[ 'UPPER(?)' => $search ] },
+
]);
- $users = $users->search( $filter, {
- prefetch => { Packages => { Ips => { Subnet => { Server => 'Locality' }}}},
- });
return $users;
I use git built from the source (2.15.0.531.g2ccb3012c)
--
Kaartic
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: Feature request: Reduce amount of diff in patch
2017-11-28 16:09 Feature request: Reduce amount of diff in patch KES
2017-11-28 17:24 ` Kaartic Sivaraam
@ 2017-12-07 20:13 ` Stefan Beller
2017-12-07 20:28 ` Junio C Hamano
1 sibling, 1 reply; 4+ messages in thread
From: Stefan Beller @ 2017-12-07 20:13 UTC (permalink / raw)
To: KES; +Cc: git
On Tue, Nov 28, 2017 at 8:09 AM, KES <kes-kes@yandex.ru> wrote:
> Hi.
>
> I get often patches which can be minimized:
>
> @@ -60,11 +64,8 @@ sub _get_filter {
> address => { -like => \[ '?', "%$search%" ] },
> company => { -like => \[ '?', "%$search%" ] },
> country_code => { '=' => \[ 'UPPER(?)' => $search ] },
> - ]);
>
> - $users = $users->search( $filter, {
> - prefetch => { Packages => { Ips => { Subnet => { Server => 'Locality' }}}},
> - });
> + ]);
>
>
> return $users;
>
> This patch can be minimized to:
>
> @@ -60,11 +64,8 @@ sub _get_filter {
> address => { -like => \[ '?', "%$search%" ] },
> company => { -like => \[ '?', "%$search%" ] },
> country_code => { '=' => \[ 'UPPER(?)' => $search ] },
> ]);
>
> - $users = $users->search( $filter, {
> - prefetch => { Packages => { Ips => { Subnet => { Server => 'Locality' }}}},
> - });
>
>
> return $users;
>
> May you please fix the git to generate minimized patches?
You can use a different diff algorithm.
--diff-algorithm={patience|minimal|histogram|myers}
Choose a diff algorithm. The variants are as follows:
default, myers
The basic greedy diff algorithm. Currently, this is the
default.
minimal
Spend extra time to make sure the smallest possible diff is
produced.
patience
Use "patience diff" algorithm when generating patches.
histogram
This algorithm extends the patience algorithm to "support
low-occurrence common elements".
For instance, if you configured diff.algorithm variable to a
non-default value and want to use the default one, then you have to
use --diff-algorithm=default option.
Soon we'll have another diff algorithm "anchor" that tries to
keep a given line out of the +/- but rather move other lines around
the line to give equal results.
^ permalink raw reply [flat|nested] 4+ messages in thread