기타/Git
[Git] CRLF 개행 문자 차이로 인한 경고 해결하기
JOYERIM
2023. 1. 17. 15:46
Windows의 경우 line ending으로 CR(Carriage-Return, \r)과 LF(Line Feed, \n)을 사용하며,
Unix와 Mac OS는 LF만 사용한다.
이 차이로 인해 git에서 잘못 인식하여 문제가 생길 수 있으니 crlf 처리 방법을 사전에 결정해야 한다.
(ex. 실제 코드는 변경되지 않았는데 CR/LF 때문에 변경으로 착각)
설정 방법
core.eof
core.eol = native 시스템에서 line ending을 처리하는 방법에 따른다. 즉, windows에서는 CRLF를 사용하고 Linux, OS는 LF를 사용한다.(기본설정)
core.eol = crlf CRLF를 line ending으로 사용한다.
core.eol = lf LF를 line ending으로 설정한다.
아래 명령어로 설정할 수 있다.
# 설정하기
$ git config --global core.eol native
# 설정 확인하기
$ git config --global --list|grep core.eol
core.autocrlf
core.autocrlf = false git는 CRLF, LF 설정을 무시하고 파일 그대로 check-in, check-out한다. 즉, OS가 다를 경우 문제가 생길 수 있다.(기본 설정)
core.autocrlf = true text file을 object database에 넣기 전에 CRLF를 LF로 변경한다.
core.autocrlf = input LF를 line ending으로 사용한다.
해결 방법
1. windows
windows는 CRLF를 사용하므로 core.autocrlf를 true로 설정한다.
즉, 저장소에서 가져올 때 LF를 CRLF로 변경하며, 저장소로 보낼 때는 CRLF를 LF로 변경해준다.
$ git config --global core.autocrlf true
2. Linux, Mac OS, Unix
Linux Max OS, Unix는 LF만 사용하므로 input으로 설정한다.
git config --global core.autocrlf input
저의 이해를 도와주신 포스트 주인분께 감사드립니다..
git 에서 CRLF 개행 문자 차이로 인한 문제 해결하기
www.lesstif.com