[Git Warning] CRLF & LF ?

SeokHun·2021년 3월 10일
0

Whitespace Error ?

새 줄 문자 - 위키백과

MAC/Linux 시스템 에서는 줄의 끝이 LF(Line Feed) 로 이루어 진다.

반면 Windows 에서는 CR(Carriage Return)과 LF(Line Feed) 를 이용한 CRLF 로 나타낸다.

따라서 MAC/Linux 개발자와 Windows 개발자가 협업했을 때 이와 관련한 오류가 발생할 수 있다.

git 을 사용하다 보면 다음과 같은 경고를 본 적이 있을 것이다.

warning: CRLF will be replaced by LF in ~
The file will have its original line endings in your working directory.

CRLF / LF 중 어느 것을 사용해야 할 지 git이 결정하지 못했기 때문이다.

해결 ?

Git 에서는 core.autocrlf 설정을 통해 파일을 추가 할 때 CRLF 줄 끝을 LF로 자동 변환하고 파일 시스템에 코드를 체크 아웃 할 때 그 반대로 자동 변환하는 기능이 있다.

Windows 에서는 다음과 같은 명령어를 통해 core.autocrlf 를 켜보자.

$ git config --global core.autocrlf true

해당 프로젝트에서만 사용하고 싶다면 --global 옵션을 제거해주면 된다.

그렇다고 MAC / Linux 에서는 CRLF 를 사용해야 하는가?

그 반대상황을 위한 core.autocrlf 설정도 있다.

git config --global core.autocrlf input

Whitespace 에 대한 자세한 설정을 보고 싶다면 아래의 참조에서 공식 문서를 살펴보도록 하자.

참조

Customizing Git - Git Configuration

0개의 댓글