.gitignore란?
.gitignore
는 프로젝트 내에서 Git의 추적을 피하고 싶은 파일들의 명단을 적어 놓는 파일입니다. 일반적으로 개발 중 생성되는 불필요한 파일이나 민감한 정보를 포함하는 파일들을 Git이 추적하지 않도록 하는 데 사용됩니다. 예를 들어 DB, 로그 파일, 환경 설정 파일 등이 이에 해당합니다.
https://www.toptal.com/developers/gitignore
gitignore.io
Create useful .gitignore files for your project
www.toptal.com
위의 링크에 접속한 다음, 검색창에 진행 중인 프로젝트에 대한 정보를 입력하면 .gitignore
에 작성해야 할 파일들에 대한 템플릿을 제공하므로 편리하게 사용할 수 있습니다.
.gitignore 위치
.gitignore
파일은 프로젝트의 최상단 디렉터리에 위치해야 합니다. 이 위치에 .gitignore
파일을 작성하면 프로젝트 전체에 규칙이 적용됩니다.
또한, 특정 디렉터리 내에서만 적용되는 .gitignore
파일을 작성할 수도 있습니다. 이는 프로젝트 내의 특정 부분에서만 예외 규칙을 적용하고 싶을 때 유용합니다.
(.gitignore 파일이 작성 된 위치 이하에 규칙이 적용 된다고 생각하면 이해하기 쉽습니다.)
Tip .gitignore는 언제 작성하는 게 좋을까?
초보 개발자로서, 프로젝트 마무리 단계에 .gitignore
를 작성해서 문제가 발생한 경험이 많았습니다. 문제를 해결하기 위해 여러 가지를 시도해봤고, 그 과정에서 배운 내용을 바탕으로 몇 가지 팁을 공유합니다.
일반적으로 프로젝트를 시작할 때 초반 단계에 .gitignore
파일을 생성하는 것이 좋습니다. 그 이유는 다음과 같습니다.
- 불필요한 파일 추적 방지: 프로젝트 초기 단계에서
.gitignore
를 설정해두면, 불필요한 파일들이 처음부터 Git 저장소에 추가되는 것을 막을 수 있습니다. - 보안: 환경 설정 파일, API 키와 같은 민감한 정보가 포함된 파일들을 실수로 커밋하는 것을 방지할 수 있습니다. 이와 같은 민감한 정보는 프로젝트 초기에
.gitignore
에 포함시켜야 하며, 이를 통해 보안 사고를 예방할 수 있습니다. - 저장소 크기 관리: 가상 환경이나 의존성 파일 등 불필요한 파일들이 저장소에 추가되는 것을 막아 저장소의 크기를 효율적으로 관리할 수 있습니다. 초기부터 불필요한 파일이 Git에 포함되지 않게 함으로써 저장소의 크기를 줄일 수 있습니다.
프로젝트 후반에 .gitignore를 작성해야 할 때
프로젝트 후반에 .gitignore
파일을 추가하면 이미 Git 저장소에 추가된 파일들에 대해서는 효과가 없습니다. 이미 추적 중인 파일들은 .gitignore
에 추가해도 Git이 계속 추적하게 됩니다. 이런 경우 다음 절차를 따라하면 이미 추적 중인 파일을 무시하게 만들 수 있습니다.
git rm -r --cached . # 이미 추적 중인 파일들을 Git의 캐시에서 제거합니다.
git add . # 변경사항을 스테이징하고 커밋합니다.
git commit -m "Removed cache files"
git push # 변경사항을 원격 저장소에 푸쉬합니다.
이 절차를 거치면 이전에 추적되던 파일들 중 .gitignore
에 작성된 파일들은 더 이상 추적되지 않게 됩니다. 하지만 저장소의 히스토리를 변경하지는 않으므로 이전 커밋에는 여전히 해당 파일들이 존재한다는 점을 유의해야 합니다.
'코딩' 카테고리의 다른 글
[HTTP] PUT, DELETE 그리고 멱등성 (1) | 2024.09.05 |
---|---|
[HTTP] GET 그리고 POST (0) | 2024.08.22 |
[GitHub] Git과 GitHub (1) | 2024.08.17 |
[Python] ModuleNotFoundError (0) | 2024.08.15 |
[Python] 가상 환경 (0) | 2024.08.14 |