프로젝트를 공동 작업하다보면, 윈도우 사용자와 Mac OS 사용자의 줄바꿈 설정이 다른 경우가 있다.
Line Seperator
- 윈도우 기본 설정 : CRLF (\r\n)
- Mac , Linux 기본 설정 : LF (\n)
‣ 차이점 : https://www.aleksandrhovhannisyan.com/blog/crlf-vs-lf-normalizing-line-endings-in-git/
서로 다른 OS 작업 환경에서 린트 설정을 맞춰주기 위해서는 별도의 린트 설정이 필요하다.
.eslintrc.json
{
"rules": {
"linebreak-style":[
"error", "unix"
]
}
}
이렇게 설정하면 LF 형식이 아닐 경우 error가 난다.
그런데, 나의 경우는 이미 프로젝트가 어느 정도 진행된 후 작업자가 추가 발생하여서 적용하게 된 케이스여서 이렇게 강제하는 것은 조금 과하다고 팀에서 판단하였다.
그래서 버전 시스템에서 유연하게 작동하게 하려고 한다. Window에서 작업한 사용자가 checkout시 LF 줄바꿈을 CRLF로 변환하게 되는데, 변경사항 커밋시 LF로 줄바꿈이 되도록 설정할 수 있다.
.gitattruibutes 파일을 루트 경로에 추가하고, 아래와 같이 옵션을 추가하면 된다.
*.ts text eol=lf
*.tsx text eol=lf
[참고]
1. https://eslint.org/docs/latest/rules/linebreak-style
2. https://git-scm.com/docs/gitattributes
'TIL' 카테고리의 다른 글
IT 5분 잡학사전 Intro (1) | 2023.10.06 |
---|---|
[프론트엔드 링크 모음] (0) | 2023.09.14 |
Intellij 단축키 모음 (0) | 2023.06.26 |
vite 호스트, 포트 설정해서 실행하기 (0) | 2023.06.23 |
null 이 내부 로직에 있는 경우 왜 안좋을까? (0) | 2023.06.18 |