Re: [PATCH/RFC v1 1/1] No duplicate CRLF rewrite warnings on commit
- From
Eric Sunshine <sunshine@sunshineco.com>
- Date
- May 15, 2016, 06:15 UTC
- Message-ID
- <CAPig+cTrijGb5C1DRYTYtas0Rp5Fb34KmkxW5Fqb-T5-bdyD9Q@mail.gmail.com>
- In-Reply-To
- <1463292503-12559-1-git-send-email-tboegi@web.de>
On Sun, May 15, 2016 at 2:08 AM, <tboegi@web.de> wrote:
Show 18 quoted lines
> If .gitattributes are used to enable CRLF->LF rewriting, > then commiting a file that would have its line endings rewritten, > the "CRLF will be replaced by LF" warning is printed 2 times. > A user expects it to be printed only once. > The automatic rename detection by Git runs the conversion twice, > suppress the warning in the second run. > > Reported-By: Adam Dinwoodie <adam@dinwoodie.org> > Signed-off-by: Torsten Bögershausen <tboegi@web.de> > --- > diff --git a/t/t0020-crlf.sh b/t/t0020-crlf.sh > @@ -86,6 +86,20 @@ test_expect_success 'safecrlf: print warning only once' ' > +test_expect_success 'safecrlf: print warning only once on commit' ' > + > + git config core.autocrlf input && > + git config core.safecrlf warn && > + > + for w in I am all LF; do echo $w; done >doublewarn2 &&
I would typically say something about how you could instead use:
test_write_lines I am all LF >doublewarn2 &&
but since you're just mimicking existing style in this script, I won't mention it.
> + git add doublewarn2 && > + git commit -m "nowarn" && > + for w in Oh here is CRLFQ in text; do echo $w; done | q_to_cr >doublewarn2 &&
Likewise; note my silence.
Show 5 quoted lines
> + git add doublewarn2 2>&1 && > + git commit -m Message 2>&1 | grep "CRLF will be replaced by LF" >actual && > + echo "warning: CRLF will be replaced by LF in doublewarn2." >expected && > + test_cmp expected actual > +'