상세 컨텐츠

본문 제목

.gitignore가 뭐야 — 깃허브에 올리지 말 것 목록

서버·개발/코드 노트

by 사이 (SAI) 2026. 7. 21. 13:19

본문

728x90
반응형

.gitignore는 Git이 깃허브에 올리지 않을 파일과 폴더의 목록을 적어두는 파일입니다.

2026년 7월 기준, AI로 코드를 만들어 처음 깃허브에 올리는 초보자에게 이 파일은 사실상 첫 안전장치입니다.

이 글을 읽으면 .gitignore가 왜 필요한지, 어떤 파일을 여기 적는지, AI로 만든 프로젝트에서 이게 왜 중요한지를 한 번에 정리할 수 있습니다.

깃허브 업로드 앞에 놓인 출입 차단봉과 '올리지 마' 블랙리스트 명단

.gitignore는 "이건 깃허브에 올리지 마"라고 Git에게 알려주는 블랙리스트 파일입니다. 비밀번호가 든 .env, 용량이 큰 node_modules가 대표 단골입니다.

.gitignore는 왜 필요할까

프로젝트 폴더에는 남에게 보여주면 안 되거나, 굳이 올릴 필요가 없는 파일이 섞여 있습니다.

대표적인 게 두 종류입니다.

첫째는 비밀입니다.

API 키나 비밀번호를 담은 .env 파일이 그대로 깃허브에 올라가면, 누구나 그 키를 볼 수 있게 됩니다.

공개된 저장소에서 노출된 키가 악용되는 사고는 초보자에게 드물지 않게 일어납니다.

둘째는 용량입니다.

node_modules 폴더는 설치한 부품이 잔뜩 쌓여 매우 무거운데, 이건 package.json만 있으면 언제든 다시 만들 수 있습니다.

그래서 굳이 올릴 이유가 없고, 올리면 저장소만 무거워집니다.

.gitignore는 이 두 가지를 애초에 업로드 대상에서 빼주는 역할을 합니다.

.gitignore가 정확히 뭔지

.gitignore는 프로젝트 폴더 안에 두는 평범한 텍스트 파일입니다.

여기에 파일 이름이나 폴더 이름을 한 줄에 하나씩 적어두면, Git이 그 목록을 보고 "이건 추적하지 않겠다"고 판단합니다.

말하자면 클럽 입구의 출입 금지 명단과 비슷합니다.

명단에 이름이 있으면 안으로(=깃허브로) 들어가지 못합니다.

가장 단순한 예시는 이렇게 생겼습니다.

node_modules/
.env
dist/

폴더는 뒤에 슬래시(/)를 붙여 표시하고, 파일은 이름 그대로 적습니다.

이렇게만 적어두면 node_modules 폴더 전체와 .env 파일, 그리고 빌드 결과물이 담긴 dist 폴더가 업로드에서 제외됩니다.

코드 에디터에 열린 .gitignore 파일과 node_modules, .env가 적힌 목록 화면

블랙리스트 단골 목록

실무에서 .gitignore에 거의 항상 들어가는 항목이 몇 가지 있습니다.

아래 표로 "올리는 것"과 "안 올리는 것"을 나눠 보면 감이 잡힙니다.

깃허브에 올리는 것 .gitignore로 빼는 것
내가 직접 쓴 소스 코드 node_modules (설치하면 다시 생기는 부품 창고)
package.json (부품 목록) .env (비밀번호·API 키)
README 같은 설명 문서 dist·build (빌드 결과물)

핵심은 "내가 손으로 쓴 것은 올리고, 자동으로 다시 만들어지거나 비밀인 것은 뺀다"입니다.

node_modules가 왜 다시 생기는지는 node_modules 폴더가 뭐야 글에서, .env에 왜 비밀을 담는지는 .env 파일이 뭐야 글에서 더 풀어 다뤘습니다.


AI랑은 무슨 상관일까

요즘은 AI에게 코드를 통째로 짜달라고 해서 프로젝트를 시작하는 경우가 많습니다.

이때 AI가 만들어준 코드에는 API 키를 넣는 자리가 종종 들어 있습니다.

키를 채워 넣고 그 폴더를 그대로 깃허브에 올리면, 방금 넣은 키가 함께 공개돼 버립니다.

.gitignore에 .env 한 줄을 적어두는 것이, AI로 만든 프로젝트를 올릴 때 키 유출을 막는 가장 간단한 첫 단계입니다.

개인적으로는 AI로 코딩을 시작하는 사람일수록 이 파일부터 챙기는 습관을 먼저 들이는 게 좋다고 봅니다.

코드 실력보다 사고 한 번을 막는 게 훨씬 중요하기 때문입니다.

자물쇠로 잠긴 .env 카드가 깃허브 업로드 컨베이어에서 걸러지는 장면

정리하면

.gitignore는 깃허브에 올리지 않을 파일 목록을 적는 블랙리스트입니다.

비밀(.env)을 지키고, 무거운 폴더(node_modules)를 빼서 저장소를 가볍게 유지합니다.

AI로 프로젝트를 만들어 처음 공개할 때, 이 파일 한 장이 키 유출을 막아주는 안전장치가 됩니다.

깃허브 사용법 자체가 처음이라면 깃과 깃허브 처음 세팅하기 글부터 보면 순서가 잡힙니다.

자주 묻는 질문

.gitignore에 적었는데도 파일이 계속 올라가요

이미 한 번 깃허브에 올라간 파일은 .gitignore에 추가해도 자동으로 빠지지 않습니다.

Git이 이미 추적 중이기 때문입니다.

이 경우 추적에서 먼저 제외한 뒤 다시 커밋해야 하며, 자세한 명령은 발행 전 공식 문서 확인이 필요합니다.

.gitignore 파일은 직접 만들어야 하나요

네, 보통 프로젝트 폴더 맨 위에 직접 만듭니다.

다만 Vite 같은 도구로 프로젝트를 생성하면 기본 .gitignore가 자동으로 함께 만들어지는 경우가 많습니다.

그럴 때는 필요한 줄만 추가하면 됩니다.

 

 

참고한 자료

Git 공식 문서와 GitHub의 gitignore 안내를 참고했으며, 구체적인 명령어와 최신 사용법은 발행 전 공식 문서 확인이 필요합니다.

728x90
반응형

관련글 더보기

댓글 영역