Re: [PATCH v2 1/1] merge-file: let conflict markers match end-of-line style of the context
- From
Torsten Bögershausen <tboegi@web.de>
- Date
- Jan 24, 2016, 16:27 UTC
- Message-ID
- <56A4FB64.4010609@web.de>
- In-Reply-To
- <d71c7abddd4cba85b967f9fe1d33c7c843176ca2.1453632296.git.johannes.schindelin@gmx.de>
On 24.01.16 11:48, Johannes Schindelin wrote: (I had the same reasoning about the CRLF in the working tree: We don't need to look at core.autocrlf/attributes, so Ack from me)
Show 12 quoted lines
> +test_expect_success 'conflict markers match existing line endings' ' > + append_cr <nolf-orig.txt >crlf-orig.txt && > + append_cr <nolf-diff1.txt >crlf-diff1.txt && > + append_cr <nolf-diff2.txt >crlf-diff2.txt && > + test_must_fail git -c core.eol=crlf merge-file -p \ > + crlf-diff1.txt crlf-orig.txt crlf-diff2.txt >crlf.txt && > + test $(tr "\015" Q <crlf.txt | grep "\\.txtQ$" | wc -l) = 3 && > + test_must_fail git -c core.eol=crlf merge-file -p \ > + nolf-diff1.txt nolf-orig.txt nolf-diff2.txt >nolf.txt && > + test $(tr "\015" Q <nolf.txt | grep "\\.txtQ$" | wc -l) = 0 > +' > +
Minor remark:
Ramsay suggested a test that doesn't use grep or wc and looks like this:
test_expect_success 'conflict markers contain CRLF when core.eol=crlf' '
test_must_fail git -c core.eol=crlf merge-file -p \
nolf-diff1.txt nolf-orig.txt nolf-diff2.txt >output.txt &&
tr "\015" Q <output.txt | sed -n "/^[<=>|].*Q$/p" >out.txt &&
cat >expect.txt <<-\EOF &&
<<<<<<< nolf-diff1.txtQ
||||||| nolf-orig.txtQ
=======Q
>>>>>>> nolf-diff2.txtQ
EOF
test_cmp expect.txt out.txt
'