I\'m using Intellij IDEA 14 on Windows and Git as VCS on Unix server.
The line separator in Windows is CLRF (\\r\\n
) and LF (\\n
) in Unix.
In Git, I\'m
If you came to this thread like me seeking an answer as to why your unit test (JUnit) fails on comparing generated JSON (or any other structure that contains line separators) with one written by hand, you should replace \n by \r\n (for Windows) in your string. The instructions given above don't work for this case.
UPD.
I'm also developing on windows and Because our servers are powered by Linux and all the code has to base on Linux I have preferred to change all my files to LF instead of CRLF.
from git command line:
git config --global core.autocrlf false
i'm working with intellij idea so it's quite easy:
1) File --> settings --> editor --> code style: (for any new file will be created)
a. Scheme : default
b. Line separator: unix and os x (\n)
2) mark the root of the project --> file --> line separator --> LF unix and os x (\n) (for exist files)
Remark: you can also use apps like dos2unix.exe or some other scripts.
than I did using my command line: (you can do this also from the idea)
git commit -m "bla bla"
git add .
git push origin master
since then, I didn't got those warnings
In the bottom right of your window, change [CRLF]
to [LF]
In Intellij 17.3, you can select in the "Compare by" combobox in the compare window whether you want to compare 'Binary content' or 'Text'. In the second case CRLF and LF are not shown as "different".
Create parser.py in the same dir. Change the name and run. Enjoy))
with open('./file_to_fix.py', 'r') as f:
a = f.read()
with open('./file_to_fix.py', 'w') as f:
# for i in a.split('\r\n'):
# f.write(i)
aa = a.replace('\r\n', '\n')
f.write(aa)