이 글은 이런 분께
- 내 컴퓨터에서만 잘 되는 코드를 만들고 있는 건 아닌지 한 번도 점검해본 적 없는 분
- Git 저장소에 뭐가 올라가 있는지 파일 하나하나 다 열어본 적은 없는 분
- “코드는 문제없다”에서 멈추지 않고 한 겹 더 파보는 습관이 궁금한 분
Before — 궁금해진 이유
오늘 하루 사이트를 세 번이나 다른 방식으로 확인했다(frontmatter 스트레스 테스트, 처음 보는 사람 점검 2회차). 그러다 문득 다른 각도의 질문이 떠올랐다. “내 사이트가 내 컴퓨터에서만 되고, 다른 컴퓨터에선 안 될 만한 게 있을까?” 지금까지는 늘 이 컴퓨터에서만 작업했으니, 확인해본 적이 없었다.
어떻게 — 실제 쓴 프롬프트 그대로
내 컴퓨터에서만 되고 다른 데서는 안 될 만한 게 있는지 봐줘.
내 폴더 경로나 내 컴퓨터에만 있는 파일에 기대고 있는 부분이 있으면 알려줘.
이 한 마디로 학습메이트가 사이트 코드 전체를 훑었다. import 경로, 이미지 참조 방식, 설정 파일, 환경변수 사용법까지 하나씩 확인했다.
1차 결과 — 코드는 깨끗했다
- 컴포넌트를 불러오는 경로가 전부 상대경로였고, 실제 파일 이름 대소문자와도 정확히 일치했다.
- 이미지는
/images/...처럼 사이트 안 경로로만 참조하고 있었다. - Pexels API 키는 환경변수로만 쓰고 있어서, 키가 없는 컴퓨터에서도 에러 없이 그냥 사진만 안 뜨게 되어 있었다.
여기까지만 보면 “문제없음”으로 끝낼 수도 있었다.
막힘 → 해결: 한 겹 더 파보니 있었다
그런데 코드만 봐서는 못 잡을 게 있을까 싶어서, 저장소에 실제로 올라간 파일 목록을 통째로 다시 훑어봤다. 그랬더니 .claude/settings.local.json이라는 파일이 걸렸다. 이름에 이미 “local”이 붙어 있는 것처럼, 이건 원래 “이 컴퓨터의 Claude Code 권한 설정”이라 GitHub에 올라가면 안 되는 파일이었는데, .gitignore에 빠져 있어서 그동안 계속 같이 커밋되고 있었다. 다행히 비밀번호나 키 같은 민감정보는 없었고, 이 컴퓨터에서 어떤 명령어를 허락했는지 목록 정도였다.
After — 코드는 문제없었고, 파일 하나만 정리
# .gitignore에 한 줄 추가
.claude/settings.local.json
# 저장소에서만 빼고, 이 컴퓨터엔 그대로 남기기
git rm --cached .claude/settings.local.json
git rm --cached를 쓴 게 핵심이다. 그냥 rm으로 지웠으면 이 컴퓨터에서 쓰던 권한 설정까지 같이 사라졌을 텐데, --cached를 붙이면 “Git 추적 목록에서만 빼고, 실제 파일은 컴퓨터에 그대로 둔다”는 뜻이라 설정은 계속 잘 작동한다.
배운 것 / 재사용 자산
“코드가 깨끗하다”와 “저장소가 깨끗하다”는 다른 질문이다. import 경로나 환경변수처럼 코드 안의 문제만 봤으면 못 찾았을 거다. git ls-files로 실제 저장소에 뭐가 올라가 있는지까지 봐야 보이는 문제가 따로 있었다.
재사용 프롬프트
내 컴퓨터에서만 되고 다른 데서는 안 될 만한 게 있는지 봐줘.
내 폴더 경로나 내 컴퓨터에만 있는 파일에 기대고 있는 부분이 있으면 알려줘.
재사용 체크리스트 — 내 저장소에 개인 설정 파일이 숨어있는지 확인하는 법
git ls-files로 저장소에 올라간 파일 전체 목록 보기- 이름에
local,personal,.env같은 게 들어간 파일이 있는지 훑기 - 있으면
.gitignore에 추가하고,git rm --cached 파일이름으로 저장소에서만 빼기 (컴퓨터의 실제 파일은 안 지워짐)