* Incorrect unified diff when run with "--find-copies-harder"
@ 2018-06-24 10:36 Daniel Penkin
2018-06-24 13:33 ` Andrei Rybak
0 siblings, 1 reply; 3+ messages in thread
From: Daniel Penkin @ 2018-06-24 10:36 UTC (permalink / raw)
To: git
Hello,
I believe I found a bug in how Git represents a diff when invoked with
"--find-copies-harder" parameter.
Specifically, the unified diff header of a hunk contains an extra
piece of text which appears to be a line from the context (i.e.
unchanged line), something like this:
> git diff --find-copies-harder d00ca3f 20fb313
diff --git a/test.txt b/copy.txt
similarity index 81%
copy from test.txt
copy to copy.txt
index 734156d..43a3f9d 100644
--- a/test.txt
+++ b/copy.txt
@@ -2,6 +2,7 @@ line 1
line 2
line 3
line 4
+added line
line 5
line 6
line 7
Note "line 1" after the standard unified diff header.
I prepared a sample repository with a minimal file I can reproduce
this problem with:
https://bitbucket.org/dpenkin/find-copies-harder-bug
I'm running Git 2.18.0 on a macOS, but I also tried with Git 2.15.0
and 2.8.6 running on Alpine Linux and was able to reproduce the same
problem.
Please advise whether this is expected output or is indeed a bug.
Thank you.
Kind regards,
Daniil Penkin
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Incorrect unified diff when run with "--find-copies-harder"
2018-06-24 10:36 Incorrect unified diff when run with "--find-copies-harder" Daniel Penkin
@ 2018-06-24 13:33 ` Andrei Rybak
2018-06-24 14:42 ` Daniel Penkin
0 siblings, 1 reply; 3+ messages in thread
From: Andrei Rybak @ 2018-06-24 13:33 UTC (permalink / raw)
To: Daniel Penkin, git
On 2018-06-24 12:36, Daniel Penkin wrote:
> Hello,
>
Hi,
> I believe I found a bug in how Git represents a diff when invoked with
> "--find-copies-harder" parameter.
> Specifically, the unified diff header of a hunk contains an extra
> piece of text which appears to be a line from the context (i.e.
> unchanged line), something like this:
>
> > git diff --find-copies-harder d00ca3f 20fb313
> diff --git a/test.txt b/copy.txt
> similarity index 81%
> copy from test.txt
> copy to copy.txt
> index 734156d..43a3f9d 100644
> --- a/test.txt
> +++ b/copy.txt
> @@ -2,6 +2,7 @@ line 1
> line 2
> line 3
> line 4
> +added line
> line 5
> line 6
> line 7
>
> Note "line 1" after the standard unified diff header.
>
This text after @@ is usually a function name in a programming language or
some other relevant part of hunk context, to help user navigate the diff more
easily. What you are getting is the default version of it, as it is just
comparing txt files. You can read more about it in the documentation of
gitattributes:
https://git-scm.com/docs/gitattributes#_defining_a_custom_hunk_header
> I prepared a sample repository with a minimal file I can reproduce
> this problem with:
> https://bitbucket.org/dpenkin/find-copies-harder-bug
>
> I'm running Git 2.18.0 on a macOS, but I also tried with Git 2.15.0
> and 2.8.6 running on Alpine Linux and was able to reproduce the same
> problem.
>
> Please advise whether this is expected output or is indeed a bug.
>
This is expected output.
> Thank you.
>
> Kind regards,
> Daniil Penkin
>
--
Best regards, Andrei R.
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Incorrect unified diff when run with "--find-copies-harder"
2018-06-24 13:33 ` Andrei Rybak
@ 2018-06-24 14:42 ` Daniel Penkin
0 siblings, 0 replies; 3+ messages in thread
From: Daniel Penkin @ 2018-06-24 14:42 UTC (permalink / raw)
To: rybak.a.v; +Cc: git
Hi Andrei,
Thanks for the prompt reply.
I'm sorry for the false alarm, I should've investigated this more
thoroughly before submitting a bug.
Now I see I get that context hint in many diffs, I was confused by
many simple file diffs I was working with recently which didn't have
it.
Thank you for your time and help.
Kind regards,
Daniil Penkin
вс, 24 июн. 2018 г. в 23:33, Andrei Rybak <rybak.a.v@gmail.com>:
>
> On 2018-06-24 12:36, Daniel Penkin wrote:
> > Hello,
> >
>
> Hi,
>
> > I believe I found a bug in how Git represents a diff when invoked with
> > "--find-copies-harder" parameter.
> > Specifically, the unified diff header of a hunk contains an extra
> > piece of text which appears to be a line from the context (i.e.
> > unchanged line), something like this:
> >
> > > git diff --find-copies-harder d00ca3f 20fb313
> > diff --git a/test.txt b/copy.txt
> > similarity index 81%
> > copy from test.txt
> > copy to copy.txt
> > index 734156d..43a3f9d 100644
> > --- a/test.txt
> > +++ b/copy.txt
> > @@ -2,6 +2,7 @@ line 1
> > line 2
> > line 3
> > line 4
> > +added line
> > line 5
> > line 6
> > line 7
> >
> > Note "line 1" after the standard unified diff header.
> >
>
> This text after @@ is usually a function name in a programming language or
> some other relevant part of hunk context, to help user navigate the diff more
> easily. What you are getting is the default version of it, as it is just
> comparing txt files. You can read more about it in the documentation of
> gitattributes:
>
> https://git-scm.com/docs/gitattributes#_defining_a_custom_hunk_header
>
> > I prepared a sample repository with a minimal file I can reproduce
> > this problem with:
> > https://bitbucket.org/dpenkin/find-copies-harder-bug
> >
> > I'm running Git 2.18.0 on a macOS, but I also tried with Git 2.15.0
> > and 2.8.6 running on Alpine Linux and was able to reproduce the same
> > problem.
> >
> > Please advise whether this is expected output or is indeed a bug.
> >
>
> This is expected output.
>
> > Thank you.
> >
> > Kind regards,
> > Daniil Penkin
> >
>
> --
> Best regards, Andrei R.
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2018-06-24 14:42 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-06-24 10:36 Incorrect unified diff when run with "--find-copies-harder" Daniel Penkin
2018-06-24 13:33 ` Andrei Rybak
2018-06-24 14:42 ` Daniel Penkin
Code repositories for project(s) associated with this public inbox
https://80x24.org/mirrors/git.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).