피드로 돌아가기
Show GN: CRLF를 LF로 강제해주는 도구, LFify
GeekNewsGeekNews
DevOps

Show GN: CRLF를 LF로 강제해주는 도구, LFify

LFify가 git pre-commit 훅에서 CRLF를 LF로 자동 변환하여 팀 전체의 라인엔딩 일관성을 보장한다

rlarudgh20172026년 3월 31일1beginner

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 문제를 자동 해결할 수 있다

원문 읽기