
Git을 사용할 때 반드시 알아야 하는 개념 중 하나가 .gitignore 파일이다.
프로젝트를 진행하다 보면 자동으로 생성되는 파일이나 민감한 정보가 담긴 파일 등이
깃 저장소에 올라가면 안 되는 경우가 많다.
이런 파일들이 깃에 올라가지 않도록 설정하는 것이 바로 .gitignore 파일의 역할이다.
.gitignore 파일이란?
.gitignore 파일은 특정 파일이나 폴더를 깃의 추적 대상에서 제외하도록 설정하는 역할을 한다.
즉, .gitignore에 지정된 파일이나 폴더는 git add . 명령어를 실행해도 스테이징되지 않는다.
이를 통해 불필요한 파일이 원격 저장소에 올라가는 것을 방지할 수 있다.
.gitignore 기본 문법
.gitignore 파일을 작성할 때는 몇 가지 기본 규칙이 있다.
- 주석 처리
- # 기호를 사용하면 해당 줄은 주석으로 처리됨.
- 폴더 무시
- 특정 폴더를 무시하고 싶다면 폴더명/ 형태로 입력해야 함.
- 파일 무시
- 특정 파일을 무시하려면 파일명.확장자 형태로 입력하면 됨.
- 특정 확장자 무시
- 같은 확장자의 모든 파일을 무시하려면 .확장자 를 입력하면 됨.
- 예외 처리
- 무시한 파일 중 특정 파일만 추적하려면 !파일명.확장자 처럼 !를 붙이면 됨.
예제 코드
.gitignore 템플릿
각 프로그래밍 언어나 프레임워크별로 .gitignore 파일을 설정하는 방식이 다르다.
아래는 대표적인 .gitignore 템플릿이다.
Node.js 프로젝트
React 프로젝트
Python 프로젝트
Java 프로젝트
.gitignore에 올리지 말아야 할 파일과 폴더
.gitignore 파일에는 다음과 같은 파일과 폴더를 등록하는 것이 일반적임.
의존성 관련 폴더
- node_modules/, vendor/, venv/ 등은 패키지 매니저를 통해 설치할 수 있기 때문에 깃에 올릴 필요가 없음.
빌드 및 배포 파일
- dist/, build/, out/, target/ 등의 폴더는 빌드 과정에서 생성되는 파일이므로 깃에서 관리할 필요가 없음.
환경 설정 파일
- .env, config.json 등은 API 키, 데이터베이스 비밀번호 같은 민감한 정보가 포함될 수 있기 때문에
절대 깃에 올리면 안 됨.
로그 파일
- .log, logs/, npm-debug.log, yarn-error.log 등은 디버깅 용도로 사용되는 파일이므로 저장소에 올릴 필요가 없음.
운영체제 관련 파일
- Mac
- .DS_Store
- Windows
- Thumbs.db, desktop.ini
- Linux
- .cache/, .swp
IDE 및 에디터 설정 파일
- .vscode/, .idea/, .sublime-workspace, .iml 등은 개발 환경마다 다르기 때문에 깃에 올리지 않는 것이 좋음.
.gitignore에서 경로 입력하는 방법
.gitignore 파일에서 특정 파일이나 폴더를 정확하게 지정하려면 경로를 올바르게 입력해야 한다.
폴더 전체 무시
이렇게 하면 logs 폴더 내부의 모든 파일과 하위 폴더가 무시됨.
특정 파일 무시
위처럼 작성하면 config 폴더 안에 있는 settings.json 파일만 무시됨.
특정 확장자 무시
모든 .log 파일을 무시함.
하위 폴더 특정 파일만 무시
temp 폴더 안의 .tmp 확장자를 가진 파일만 무시하고,
다른 파일들은 추적됨.
무시한 파일 중 특정 파일만 추적
이렇게 하면 logs 폴더 내의 모든 파일이 무시되지만,
important.log 파일만 예외적으로 깃에 추가됨.
이제 .gitignore 파일을 적절하게 설정하여 프로젝트에서 불필요한 파일이 깃에 올라가지 않도록 관리할 수 있다.
.gitignore는 프로젝트마다 다르게 설정해야 하므로, 개발 환경에 맞춰 신중하게 구성하는 것이 중요하다.
'개발 > etc' 카테고리의 다른 글

Git을 사용할 때 반드시 알아야 하는 개념 중 하나가 .gitignore 파일이다.
프로젝트를 진행하다 보면 자동으로 생성되는 파일이나 민감한 정보가 담긴 파일 등이
깃 저장소에 올라가면 안 되는 경우가 많다.
이런 파일들이 깃에 올라가지 않도록 설정하는 것이 바로 .gitignore 파일의 역할이다.
.gitignore 파일이란?
.gitignore 파일은 특정 파일이나 폴더를 깃의 추적 대상에서 제외하도록 설정하는 역할을 한다.
즉, .gitignore에 지정된 파일이나 폴더는 git add . 명령어를 실행해도 스테이징되지 않는다.
이를 통해 불필요한 파일이 원격 저장소에 올라가는 것을 방지할 수 있다.
.gitignore 기본 문법
.gitignore 파일을 작성할 때는 몇 가지 기본 규칙이 있다.
- 주석 처리
- # 기호를 사용하면 해당 줄은 주석으로 처리됨.
- 폴더 무시
- 특정 폴더를 무시하고 싶다면 폴더명/ 형태로 입력해야 함.
- 파일 무시
- 특정 파일을 무시하려면 파일명.확장자 형태로 입력하면 됨.
- 특정 확장자 무시
- 같은 확장자의 모든 파일을 무시하려면 .확장자 를 입력하면 됨.
- 예외 처리
- 무시한 파일 중 특정 파일만 추적하려면 !파일명.확장자 처럼 !를 붙이면 됨.
예제 코드
.gitignore 템플릿
각 프로그래밍 언어나 프레임워크별로 .gitignore 파일을 설정하는 방식이 다르다.
아래는 대표적인 .gitignore 템플릿이다.
Node.js 프로젝트
React 프로젝트
Python 프로젝트
Java 프로젝트
.gitignore에 올리지 말아야 할 파일과 폴더
.gitignore 파일에는 다음과 같은 파일과 폴더를 등록하는 것이 일반적임.
의존성 관련 폴더
- node_modules/, vendor/, venv/ 등은 패키지 매니저를 통해 설치할 수 있기 때문에 깃에 올릴 필요가 없음.
빌드 및 배포 파일
- dist/, build/, out/, target/ 등의 폴더는 빌드 과정에서 생성되는 파일이므로 깃에서 관리할 필요가 없음.
환경 설정 파일
- .env, config.json 등은 API 키, 데이터베이스 비밀번호 같은 민감한 정보가 포함될 수 있기 때문에
절대 깃에 올리면 안 됨.
로그 파일
- .log, logs/, npm-debug.log, yarn-error.log 등은 디버깅 용도로 사용되는 파일이므로 저장소에 올릴 필요가 없음.
운영체제 관련 파일
- Mac
- .DS_Store
- Windows
- Thumbs.db, desktop.ini
- Linux
- .cache/, .swp
IDE 및 에디터 설정 파일
- .vscode/, .idea/, .sublime-workspace, .iml 등은 개발 환경마다 다르기 때문에 깃에 올리지 않는 것이 좋음.
.gitignore에서 경로 입력하는 방법
.gitignore 파일에서 특정 파일이나 폴더를 정확하게 지정하려면 경로를 올바르게 입력해야 한다.
폴더 전체 무시
이렇게 하면 logs 폴더 내부의 모든 파일과 하위 폴더가 무시됨.
특정 파일 무시
위처럼 작성하면 config 폴더 안에 있는 settings.json 파일만 무시됨.
특정 확장자 무시
모든 .log 파일을 무시함.
하위 폴더 특정 파일만 무시
temp 폴더 안의 .tmp 확장자를 가진 파일만 무시하고,
다른 파일들은 추적됨.
무시한 파일 중 특정 파일만 추적
이렇게 하면 logs 폴더 내의 모든 파일이 무시되지만,
important.log 파일만 예외적으로 깃에 추가됨.
이제 .gitignore 파일을 적절하게 설정하여 프로젝트에서 불필요한 파일이 깃에 올라가지 않도록 관리할 수 있다.
.gitignore는 프로젝트마다 다르게 설정해야 하므로, 개발 환경에 맞춰 신중하게 구성하는 것이 중요하다.