본문 바로가기
Git

Git을 이용한 줄바꿈(line ending) 통일

by 스빠시빠 2018. 7. 17.

CRLF vs LF

Windows에서는 줄바꿈(line ending)으로 CRLF 를 사용하고 Unix 계열과 Mac은 LF 만 사용한다.
우리 개발팀은 모두 Windows 환경인데 왜 Git에서 충돌이 나는지...허허

그래서 LF 로 통일하기로 결심.

Git에서 어떤 line ending을 사용할지 세팅 할 수 있다.

방법은 core.autocrlf의 값을 변경하는 것이다. 세 가지 값으로 설정한다.

false: 아무것도 안한다.
true: CRLF를 LF로 자동적으로 변환. 반대로 체크아웃 받을때는 LF를 CRLF로 변환. (윈도우 전용)
input: LF를 줄바꿈으로 사용. 통일 가능.

위 값을 기반으로 설정을 해보자.

방법 1

  • 윈도우

    git config --global core.autocrlf true

  • Unix 계열 및 Mac

    git config --global core.autocrlf input

방법 2

.gitattributes 파일을 원격 저장소에 저장하여 사용, 따로 로컬에서 설정 할 필요가 없다.

# Set the default behavior, in case people don't have core.autocrlf set.
* text=auto
 
# Explicitly declare text files you want to always be normalized and converted
# to native line endings on checkout.
*.html   text diff=html
*.css    text
*.js     text
 
# absolute paths are ok, as are globs
/**/postinst* text eol-lf
 
# paths that don't start with / are treated relative to the .gitattributes folder
relative/path/*.txt text eol-lf

더 좋은 방법이 있다면 댓글에 알려주세요!

제발


댓글