.gitkeep

백엔드&인프라 추종자·2025년 11월 2일

GIT 활용

목록 보기
3/3

좋은 질문이에요 👍
.gitkeep“빈 디렉토리를 Git에 포함시키기 위한 관습적인 더미 파일”입니다.


🔍 1️⃣ 배경

Git은 기본적으로 빈 디렉토리를 추적하지 않습니다.
즉, 디렉토리 안에 아무 파일도 없으면 그 폴더는 커밋되지 않습니다.

예를 들어,

project/
 └── secrets/

이렇게 secrets/ 폴더만 만들어두고 내부에 아무 파일이 없으면
Git은 이 폴더 자체를 버전 관리하지 않습니다.


🔍 2️⃣ .gitkeep의 역할

그래서 우리는 보통 아래처럼 합니다 👇

touch secrets/.gitkeep

이렇게 하면 Git이 secrets/ 폴더를 인식하게 됩니다.
그리고 .gitignore에는 아래처럼 설정하죠:

secrets/*
!secrets/.gitkeep

이 뜻은:

  • secrets/ 폴더의 모든 파일은 무시(*)하되
  • .gitkeep 파일은 예외(!)추적하겠다는 뜻입니다.

✅ 3️⃣ 결과적으로

Git에는 폴더 구조는 유지되지만, 비밀번호 같은 파일은 절대 올라가지 않게 됩니다.

secrets/
 ├── .gitkeep        ✅ Git에 포함됨
 ├── db_password.txt 🚫 Git에 포함 안 됨
 └── minio_pass.txt  🚫 Git에 포함 안 됨

📦 4️⃣ 실무에서는 보통 이렇게 씁니다

  • tmp/
  • logs/
  • uploads/
  • secrets/

같은 폴더를 .gitkeep으로 유지합니다.
즉, 구조는 유지하면서 민감 데이터나 빌드 결과물은 제외하는 거죠.


원하신다면 mediaforge 프로젝트 기준으로
.gitignore + .gitkeep 권장 구성 예시도 같이 정리해드릴까요?

profile
AI 답변 글을 주로 올립니다.

0개의 댓글