
닷파일 관리, Stow에서 Chezmoi로 갈아탄 이야기
개발자라면 누구나 자기만의 터미널 설정, 에디터 설정이 있잖아요. .bashrc, .vimrc, .gitconfig 같은 파일들이요. 이렇게 이름이 점(.)으로 시작하는 설정 파일들을 닷파일(dotfiles) 이라고 불러요. 점으로 시작하면 평소엔 숨겨져 있어서 그렇게 부르는 거예요. 이 닷파일들은 사실상 내 작업 환경 그 자체거든요. 새 노트북을 받았을 때 이걸 그대로 옮길 수 있으면 몇 분 만에 원래 쓰던 환경이 뚝딱 복원되는 거죠.
그래서 많은 사람들이 닷파일을 깃(Git)으로 관리해요. 그 관리 도구를 GNU Stow에서 Chezmoi로 옮긴 경험담이 이번 이야기의 주제예요.
Stow는 어떻게 동작했나요
GNU Stow는 정말 단순해요. 심볼릭 링크(symbolic link, 바로가기 같은 거) 를 만들어주는 도구거든요. 닷파일들을 깃 저장소 한 폴더에 모아두면, Stow가 그 파일들을 홈 디렉터리에 ‘바로가기’로 연결해줘요. 실제 파일은 깃 저장소에 있고, 홈에는 그걸 가리키는 링크만 생기는 거죠. 그래서 깃으로 버전 관리하기도 깔끔하고요.
문제는 단순한 만큼 한계도 뚜렷하다는 거예요. Stow는 그냥 링크만 걸어주는 거라서, 컴퓨터마다 설정을 다르게 하고 싶을 때 곤란해져요. 예를 들어 회사 맥북과 개인 리눅스 데스크톱에서 같은 .gitconfig를 쓰는데 이메일만 다르게 하고 싶다거나, 운영체제에 따라 다른 줄을 넣고 싶을 때요. 또 API 키나 비밀번호 같은 민감한 정보 를 어떻게 안전하게 관리할지도 Stow는 답을 주지 못해요.
Chezmoi는 뭐가 다를까요
Chezmoi는 이런 가려운 부분을 긁어줘요. 가장 큰 차이는 템플릿(template) 기능이에요. 이게 뭐냐면, 설정 파일 안에 ‘이 컴퓨터가 맥이면 이 줄을, 리눅스면 저 줄을 넣어라’ 같은 조건을 써넣을 수 있는 거예요. 그러면 컴퓨터마다 알맞은 설정 파일이 자동으로 만들어져요. 한 벌의 닷파일로 여러 환경을 다 커버할 수 있는 거죠.
두 번째는 비밀 정보 관리 예요. Chezmoi는 1Password, Bitwarden 같은 비밀번호 관리자나 암호화 도구와 연동돼서, API 키 같은 걸 깃에 그대로 노출하지 않고 안전하게 끼워 넣을 수 있어요. 깃 저장소를 공개해도 비밀은 새지 않는 거예요.
또 하나 중요한 차이는, Chezmoi는 Stow처럼 링크를 거는 게 아니라 실제 파일을 직접 관리 한다는 점이에요. 그래서 링크가 꼬여서 생기는 골치 아픈 문제가 없고, 새 컴퓨터에서 chezmoi init 한 줄이면 저장소를 받아와서 설정을 쫙 펼쳐줘요.
어느 걸 골라야 할까요
정리하면 이래요. 컴퓨터 한두 대에서 단순하게 쓰고, 설정도 어디서나 똑같다면 Stow 로 충분해요. 배우기 쉽고 동작이 명확하거든요. 반대로 맥·리눅스·회사·집처럼 여러 환경을 오가고, 비밀 정보까지 깔끔하게 관리 하고 싶다면 Chezmoi 가 훨씬 편해요. 대신 템플릿 문법 같은 걸 익혀야 해서 처음엔 살짝 진입 장벽이 있어요.
한국 개발자에게는
새 장비 세팅하는 데 반나절씩 날려본 경험, 다들 있으시죠? 닷파일 관리를 제대로 해두면 그 시간이 몇 분으로 줄어요. 특히 팀에 새 멤버가 들어왔을 때 표준 개발 환경을 빠르게 깔아주는 용도로도 좋고요. 아직 닷파일을 깃으로 관리하지 않고 있다면 오늘부터 시작해보길 권해요. 가볍게 시작하려면 Stow로, 처음부터 제대로 하고 싶다면 Chezmoi로요.
한줄 정리: 닷파일은 내 개발 환경 그 자체예요. 단순하면 Stow, 여러 환경과 비밀 관리가 필요하면 Chezmoi가 답이에요. 여러분은 새 컴퓨터 세팅, 어떻게 하고 계신가요?
🔗 출처: Hacker News
TTJ 코딩클래스 정규반
월급 외 수입,
코딩으로 만들 수 있습니다
17가지 수익 모델을 직접 실습하고, 1,300만원 상당의 자동화 도구와 소스코드를 받아가세요.
"비전공 직장인인데 반년 만에 수익 파이프라인을 여러 개 만들었습니다"
실제 수강생 후기- 비전공자도 6개월이면 첫 수익
- 20년 경력 개발자 직강
- 자동화 프로그램 + 소스코드 제공