CRLF 란?
CR: Carriage Return (\r)
LF: Line Feed (\n)
해당 용어(CR, LF)는 새로운 줄 (New line) 으로 바꾸는 방식을 의미한다.
Windows에서는 line ending으로 CR, LF를 사용하고
Unix, Max OS 는 LF만 사용하기 때문에 문제가 발생한다.
이런 문제를 방지하기 위해 OS 가 달라도 문제가 없도록 crlf 처리 방법을 결정해야 한다.
Git 설정
core.eof : git 이 line ending을 처리하는데 관련 된 항목
core.eol = native. 기본 설정. 시스템에서 line ending 을 처리하는 방법에 따른다. windows에서는 CRLF 를 사용 Linux, OS X 는 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.eolcore.autocrlf: text file 을 git object database 에 checkin, checkout 할 때 어떻게 처리할지를 설정하는 변수이다.
core.autocrlf = false. 기본 설정. CRLF든 LF든 어떤 걸 사용하든 어떤 변화도 주지 않고 checkin, checkout을 한다.
core.autocrlf = true text file을 object database 에 넣기전에 CRLF 를 LF 로 변경한다
core.autocrlf = input LF를 line ending 으로 사용한다
해결책
1. 기본적으로 LF로 맞춰주는 걸 권장하기 때문에 Windows사용자는 ide에서 LF설정으로 맞춰놓고 사용하는 걸 추천.
2. Git 설정으로 해결
WIndows: 윈도우에서는 CRLF를 사용하므로 저장소에서 가져올 때 LF를 CRLF로 변경하고 저장소로 보낼 때는 CRLF를 LF로 변경하도록 true로 설정한다.
git config --global core.autocrlf trueLinux, Mac OS: 리눅스, 맥, 유닉스는 LF 만 사용하므로 input 으로 설정한다.
git config --global core.autocrlf input'Git' 카테고리의 다른 글
| [GitHub Actions] Spring boot, vue 통합, 배포(CICD) 구축 (0) | 2023.11.01 |
|---|---|
| 협업 시 충돌 상황 (0) | 2023.05.25 |
| Github repository 만들기 및 함께할 팀원 추가 (0) | 2023.05.04 |
| Git token 컴퓨터에 저장하기 (0) | 2023.05.04 |