git add를 할때,
warning: in the working copy of '~~',
LF will be replaced by CRLF the next time Git touches it
라는 에러메시지를 만났다.
원인은 git이 CRLF줄바꿈을 사용하는 환경에서 LF줄 바꿈을 사용하는 파일을 만났을때 발생하는 경고 메시지다.
이런 일이 발생한 이유는 간단하다. 기존에 글쓴이는 git파일 유지관리를 mac에서 이용했었는데 특정 수정작업을 윈도우에서 사용하였다. 그래서 git은 저장소 내에서 일관된 줄 바꿈 스타일을 유지하기 위해 이러한 경고를 표시하는 것이다.
Windows운영체에서는 줄바꿈을 CRLF를 사용하고 Unix 및 Linux 운영체제에서는 LF 줄바꿈을 사용한다.
git config --global core.autocrlf input
를 입력하면 해결된다.
이 설정은 저장소로 체크아웃할 때 CRLF 줄 바꿈을 LF로 변환하고, 커밋할 때는 LF 줄 바꿈을 유지한다.
특정 파일이 CRLF 줄 바꿈을 사용해야 하는 경우, 파일을 CRLF 줄 바꿈으로 변환할 수 있다. 이를 위해 다음 명령을 실행한다.
git config --global core.autocrlf false
그런 다음, 파일을 변환하려는 파일로 이동한 후 다음 명령어를 실행한다.
git rm --cached 파일명
git reset 파일명
이제 파일을 다시 git add하면 CRLF 경고가 나타나지 않아야 한다.
저장소의 .gitattributes 파일을 사용하여 특정 파일 또는 파일 유형에 대해 줄 바꿈 스타일을 지정할 수 있다.
.gitattributes 파일을 생성하고 다음과 같이 설정한다.
*.확장자 eol=LF
위 예제에서 "확장자"를 실제 파일 확장자로 변경하고, LF 대신 CRLF를 사용해야 하는 파일의 확장자를 지정한다.
이러한 해결 방법 중 하나를 선택하여 LF 줄 바꿈 경고를 해결할 수 있다.