[Git 경고 메세지] LF will be replaced by CRLF in 해결 방안
Developer - ETC/Git
2019. 9. 2. 17:11
안녕하세요(・∀・)ゞ
Git을 설치하고 GitBash에서 git add 명령어를 입력했는데
git add bora.txt
warning: LF will be replaced by CRLF in bora.txt.
The file will have its original line endings in your working directory
다음과같은 에러메세지가 떠서 검색한 결과 정리하고자 글을 남기게 되었습니다.
영문 | 해석본 |
warning: LF will be replaced by CRLF in bora.txt. The file will have its original line endings in your working directory |
경고 : bora.txt에서 LF는CRLF로 대체됩니다. |
구글 번역기로 돌려보면 다음과같이 나오는데 LF? CRLF? 무엇이냐..
LF(Line-Feed)
- Mac, Linux (Unix 계열) 줄바꿈 문자열 = \n
- ASCII 코드 = 10
- 커서 위치는 그대로 두고 종이의 한라인 위로 올리는 동작
- 현재 위치에서 바로 아래로 이동
- 종이를 한칸올리기
CR(Carriage-Return)
- Mac 초기 모델 줄바꿈 문자열 = \r
- ASCII 코드 = 13
- 커서 위치를 맨앞으로 옮기는 동작
- 커서 위치를 앞으로 이동
CRLF (Carriage-Return+Line-Feed)
- Windows, DOS 줄바꿈 문자열 = \r\n
- CR(\r) + LR(\n) 두 동작을 합쳐서 (\r\n)
- 커서를 다음라인 맨앞으로 옮겨주는 동작
이렇게 플랫폼(OS)마다 줄바꿈을 바라보는 문자열이 다르기에
형상관리를 해주는 Git이 바라볼 땐 둘 중 어느 쪽을 선택할지 몰라 경고 메세지를 띄워준 것.
그래서 경고 메세지 해결방안은?
autocrlf 사용
check-in, check-out할 때 파일을 어떻게 처리할지 설정하는 변수
+ 시스템 전체 적용하고 싶다면 --global 옵션 추가하고
전체가 아닌 해당 프로젝트에만 적용하고싶다면 옵션을 빼주면 됩니다.
- core.autocrlf = true
CRLF > LF 변경
- core.autocrlf = false
기본 설정
플랫폼(OS) 상관없이 줄바꿈에 대한 문자열 그대로 인식해 저장 (문제발생 가능성 존재)
- core.autocrlf = input
LF를 line ending으로 사용한다.
Windows, DOS 명령어
git config --global core.autocrlf true
Linux, MAC 명령어
git config --global core.autocrlf input
Ref