피드로 돌아가기
GeekNewsDevOps
원문 읽기
Show GN: CRLF를 LF로 강제해주는 도구, LFify
LFify가 git pre-commit 훅에서 CRLF를 LF로 자동 변환하여 팀 전체의 라인엔딩 일관성을 보장한다
AI 요약
Context
팀 프로젝트에서 .gitattribute에 eol=lf를 설정해도 특정 개발자가 CRLF로 파일을 커밋하는 문제가 지속적으로 발생한다. 매번 수동으로 git renormalize를 실행해야 하는 번거로움이 존재한다.
Technical Solution
- Husky → pre-commit 훅에 lfify 스크립트 등록하여 커밋 시 자동 변환
- Lefthook → pre-commit 훅에 lfify 스크립트 등록하여 커밋 시 자동 변환
- .git/hooks/pre-commit → 직접 스크립트 삽입으로 Husky나 Lefthook 없이도 사용 가능
- npx lfify [path] → 커맨드라인에서 일회성 폴더 변환 수행
- npm install -g lfify → 전역 설치로 프로젝트 독립 실행
Impact
커밋 시 매번 수동 renormalize 작업이 제거되어 개발자당 약 1~2분 절약
Key Takeaway
git hook 기반 도구는 팀 전체 개발자가 별도 설정 없이 일관된 코드 스타일을 유지할 수 있다
실천 포인트
Husky나 Lefthook을 사용하는 프로젝트에서 라인엔딩 컨벤션 강제 시 LFify를 pre-commit 훅에 등록하면 팀원 전체의 CRLF 문제를 자동 해결할 수 있다