형상관리/GIT

GIT 개행문자, 각 OS별 config 설정 방버

벌게진눈 2021. 2. 22. 22:54
반응형

Git은 혼자 개발할때 사용하는것 보다는
여러명이서 같이 개발할때 효율적이고 여러명이서 개발하는 경우가 많다고 생각합니다.
여러명이서 할 경우 개인마다 사용하는 OS가 다를것이고 개행문자 관련된 문제가 발생하기 쉽습니다.

개행 문자란 텍스트의 한 줄이 끝남을 표시하는 문자 또는 문자열입니다.
새줄 문자, 줄바꿈 문자, EOL과 같은 뜻으로 사용됩니다.

개행문자는 3가지가 존재합니다.

  • CRLF : 윈도우, 도스, 심비안, 팜
  • LF : 리눅스, 유닉스, 맥 OS
  • CR : 맥 OS (버전9이하)

> 예를들어 윈도우 개발자가 CRLF로 파일을 올리고
맥이나 리눅스 개발자가 LF인 상태로 한줄 수정하고 파일을 올리면
해당 파일에서 모든 부분이 변경되었다고 표시될 것입니다.

이런 부분을 해결하기 위해서 프로젝트 팀원끼리 사전협의가 필요합니다.

  1. 원격 저장소의 개행문자는 LF를 사용
  2. 윈도우 사용자는 autocrlf를 true로, 맥과 리눅스 사용자는 autocrlf를 input으로 설정합니다.

이렇게 설정할 경우 원격 저장소에는 개행문자가 LF 로 저장될 것이고
윈도우, 맥, 리눅스는 각각 기본 OS의 개행문자로 checkout 되어 사용이 가능합니다.

git config는 크게 글로벌, 사용자, 프로젝트 단위 설정을 할 수 있으며 관련 포스팅은 다음에 하겠습니다.
윈도우에서 auto crlf를 설정하기 위해서는 아래 명령어를 입력합니다.

`git config core.autocrlf true`

autocrlf 설정방법에 따라 개행문자가 어떻게 변경되는지 아래 표를 참고하시면됩니다.

autocrlf 설명

개행문자에 관하여 알아보았으니, 우리 프로젝트는 어떻게 개행문자를 사용하고있나 알아보아야겠죠? 
윈도우의 경우 글로벌이나 사용자 설정으로 autocrlf를 input으로 설정해주고 clone을 받은다음 IDE툴로 모든 파일을 LF로 변경합니다. 그 후 commit 하고 push 합니다. 
그뒤 모든 팀원은 위 가이드대로 config를 설정하여 개행문자를 맞출 수 있습니다.

반응형

'형상관리 > GIT' 카테고리의 다른 글

git cache 삭제  (0) 2020.09.19
git stash 란?  (0) 2020.09.18
git 파일 상태  (0) 2019.08.07
GIT BASH 사용 시 한글 깨지는 현상  (0) 2018.05.24
Git Tag 사용법  (0) 2017.07.01