Message ID | 84cbbfbd213b358d1e2d7cce8b4685b09efac3de.1542833244.git.thomas.braun@virtuell-zuhause.de (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Teach log -G to ignore binary files | expand |
Thomas Braun <thomas.braun@virtuell-zuhause.de> writes: > The -S <regex> option of log looks for differences that changes the > number of occurrences of the specified string (i.e. addition/deletion) > in a file. s/-S <regex>/-S<block of text>/ and s/the specified string/the specified block of text/ would make it more in line with how Documentation/gitdiffcore.txt explains it. The original discussion from early 2017 also explains with a pointer why the primary mode of -S is not <regex> but is <block of text>. > diff --git a/t/t4209-log-pickaxe.sh b/t/t4209-log-pickaxe.sh > index 42cc8afd8b..d430f6f2f9 100755 > --- a/t/t4209-log-pickaxe.sh > +++ b/t/t4209-log-pickaxe.sh > @@ -128,4 +128,15 @@ test_expect_success 'log -G looks into binary files with textconv filter' ' > test_cmp actual expected > ' > > +test_expect_success 'log -S looks into binary files' ' > + rm -rf .git && > + git init && Same comment as the one for 1/2 applies here. > + printf "a\0b" >data.bin && > + git add data.bin && > + git commit -m "message" && > + git log -S a >actual && > + git log >expected && > + test_cmp actual expected > +' > + > test_done Other than these, I think both patches look sensible. Thanks for resurrecting the old topic and reigniting it.
On Wed, Nov 21 2018, Thomas Braun wrote: > The -S <regex> option of log looks for differences that changes the > number of occurrences of the specified string (i.e. addition/deletion) > in a file. > > Add a test to ensure that we keep looking into binary files with -S > as changing that would break backwards compatibility in unexpected ways. > > Signed-off-by: Thomas Braun <thomas.braun@virtuell-zuhause.de> > --- > t/t4209-log-pickaxe.sh | 11 +++++++++++ > 1 file changed, 11 insertions(+) > > diff --git a/t/t4209-log-pickaxe.sh b/t/t4209-log-pickaxe.sh > index 42cc8afd8b..d430f6f2f9 100755 > --- a/t/t4209-log-pickaxe.sh > +++ b/t/t4209-log-pickaxe.sh > @@ -128,4 +128,15 @@ test_expect_success 'log -G looks into binary files with textconv filter' ' > test_cmp actual expected > ' > > +test_expect_success 'log -S looks into binary files' ' > + rm -rf .git && > + git init && > + printf "a\0b" >data.bin && > + git add data.bin && > + git commit -m "message" && > + git log -S a >actual && > + git log >expected && > + test_cmp actual expected > +' > + > test_done This should just be part of 1/2 since the behavior is changed there & the commit message should describe both cases.
Ævar Arnfjörð Bjarmason <avarab@gmail.com> writes: > On Wed, Nov 21 2018, Thomas Braun wrote: > >> The -S <regex> option of log looks for differences that changes the >> number of occurrences of the specified string (i.e. addition/deletion) >> in a file. >> > ... > This should just be part of 1/2 since the behavior is changed there & > the commit message should describe both cases. Sensible suggestion. Thanks.
> Junio C Hamano <gitster@pobox.com> hat am 22. November 2018 um 02:34 geschrieben: > > > Thomas Braun <thomas.braun@virtuell-zuhause.de> writes: > > > The -S <regex> option of log looks for differences that changes the > > number of occurrences of the specified string (i.e. addition/deletion) > > in a file. > > s/-S <regex>/-S<block of text>/ and > s/the specified string/the specified block of text/ would make it > more in line with how Documentation/gitdiffcore.txt explains it. > The original discussion from early 2017 also explains with a pointer > why the primary mode of -S is not <regex> but is <block of text>. Thanks for the pointer. I've updated the commit message. > > diff --git a/t/t4209-log-pickaxe.sh b/t/t4209-log-pickaxe.sh > > index 42cc8afd8b..d430f6f2f9 100755 > > --- a/t/t4209-log-pickaxe.sh > > +++ b/t/t4209-log-pickaxe.sh > > @@ -128,4 +128,15 @@ test_expect_success 'log -G looks into binary files with textconv filter' ' > > test_cmp actual expected > > ' > > > > +test_expect_success 'log -S looks into binary files' ' > > + rm -rf .git && > > + git init && > > Same comment as the one for 1/2 applies here. Fixed as well. > > + printf "a\0b" >data.bin && > > + git add data.bin && > > + git commit -m "message" && > > + git log -S a >actual && > > + git log >expected && > > + test_cmp actual expected > > +' > > + > > test_done > > Other than these, I think both patches look sensible. Thanks for > resurrecting the old topic and reigniting it. >
> Ævar Arnfjörð Bjarmason <avarab@gmail.com> hat am 22. November 2018 um 10:14 geschrieben: > > > > On Wed, Nov 21 2018, Thomas Braun wrote: > > > The -S <regex> option of log looks for differences that changes the > > number of occurrences of the specified string (i.e. addition/deletion) > > in a file. > > > > Add a test to ensure that we keep looking into binary files with -S > > as changing that would break backwards compatibility in unexpected ways. > > > > Signed-off-by: Thomas Braun <thomas.braun@virtuell-zuhause.de> > > --- > > t/t4209-log-pickaxe.sh | 11 +++++++++++ > > 1 file changed, 11 insertions(+) > > > > diff --git a/t/t4209-log-pickaxe.sh b/t/t4209-log-pickaxe.sh > > index 42cc8afd8b..d430f6f2f9 100755 > > --- a/t/t4209-log-pickaxe.sh > > +++ b/t/t4209-log-pickaxe.sh > > @@ -128,4 +128,15 @@ test_expect_success 'log -G looks into binary files with textconv filter' ' > > test_cmp actual expected > > ' > > > > +test_expect_success 'log -S looks into binary files' ' > > + rm -rf .git && > > + git init && > > + printf "a\0b" >data.bin && > > + git add data.bin && > > + git commit -m "message" && > > + git log -S a >actual && > > + git log >expected && > > + test_cmp actual expected > > +' > > + > > test_done > > This should just be part of 1/2 since the behavior is changed there & > the commit message should describe both cases. My reasoning was that this is a separate test which does not fit in with the other part. But I'm happy in folding both into one patch. Done.
diff --git a/t/t4209-log-pickaxe.sh b/t/t4209-log-pickaxe.sh index 42cc8afd8b..d430f6f2f9 100755 --- a/t/t4209-log-pickaxe.sh +++ b/t/t4209-log-pickaxe.sh @@ -128,4 +128,15 @@ test_expect_success 'log -G looks into binary files with textconv filter' ' test_cmp actual expected ' +test_expect_success 'log -S looks into binary files' ' + rm -rf .git && + git init && + printf "a\0b" >data.bin && + git add data.bin && + git commit -m "message" && + git log -S a >actual && + git log >expected && + test_cmp actual expected +' + test_done
The -S <regex> option of log looks for differences that changes the number of occurrences of the specified string (i.e. addition/deletion) in a file. Add a test to ensure that we keep looking into binary files with -S as changing that would break backwards compatibility in unexpected ways. Signed-off-by: Thomas Braun <thomas.braun@virtuell-zuhause.de> --- t/t4209-log-pickaxe.sh | 11 +++++++++++ 1 file changed, 11 insertions(+)