python/공부

gitignore 파일에 대한 완벽 가이드

jangkimo 2024. 7. 1. 10:38

Git을 사용하여 프로젝트를 관리할 때 `.gitignore` 파일은 매우 중요한 역할을 합니다. 이 파일은 특정 파일이나 디렉토리를 버전 관리에서 제외시켜, 프로젝트의 일관성을 유지하고 민감한 정보를 보호하는 데 도움을 줍니다. 이번 포스트에서는 `.gitignore` 파일의 역할과 사용 방법에 대해 자세히 알아보겠습니다.

 

.gitignore 파일의 역할

1. 불필요한 파일 제외

프로젝트를 개발하면서 생성되는 빌드 결과물, 디버깅 파일, 로그 파일 등은 버전 관리가 필요하지 않습니다. 이러한 파일을 .gitignore에 추가하면 Git이 자동으로 추적하지 않게 됩니다. 예를 들어, C 언어로 작성된 프로젝트에서 컴파일된 오브젝트 파일(*.o)이나 자바로 작성된 프로젝트의 클래스 파일(*.class)은 제외하는 것이 좋습니다.

2. 사용자별 환경 파일 제외

개발자마다 사용하는 운영체제나 IDE 설정 파일은 다를 수 있습니다. 이러한 파일을 .gitignore에 추가하여, 개인의 환경 설정이 다른 개발자에게 영향을 미치지 않도록 합니다. 예를 들어, macOS에서 생성되는 .DS_Store 파일이나 Windows의 Thumbs.db 파일을 무시할 수 있습니다.

3. 보안 및 민감한 정보 보호

API 키나 비밀번호가 포함된 파일은 절대 버전 관리 시스템에 포함되어서는 안 됩니다. .gitignore를 사용하여 이러한 파일을 제외함으로써 보안을 강화할 수 있습니다. 예를 들어, 환경 변수 파일(.env)에 API 키를 저장하고 이를 .gitignore에 추가하여 무시합니다.

4. 프로젝트의 깨끗한 상태 유지

불필요한 파일이 저장소에 포함되지 않도록 하여, 프로젝트의 일관성을 유지하고 클린한 상태를 유지할 수 있습니다. 이는 또한 저장소의 크기를 줄여서 더 빠른 클론(clone)과 푸시(push)를 가능하게 합니다.

 

 

.gitignore 파일 작성 방법

.gitignore 파일은 프로젝트의 루트 디렉토리에 위치하며, 파일이나 디렉토리를 지정할 수 있습니다. 파일명이나 디렉토리명을 작성하면 Git은 이를 무시합니다.

예제

폴더에 test_date 파일을 생성한 후

.gitignore에 test_date를 넣어보았습니다.

 그러고 나서 git push까지 진행을 하고

git add .gitignore
git commit -m "Add .gitignore file"
git push

 

git을 확인해보면

pc에서는 확인되는 test_date 파일이 git에서는 보이지 않는 것을 확인할 수 있습니다.

 

주의사항

  • .gitignore 파일에 나열된 파일이나 디렉토리는 Git이 추적하지 않지만, 이미 추적 중인 파일은 .gitignore에 추가해도 무시되지 않습니다. 이미 추적 중인 파일을 무시하려면 다음 명령어를 사용하여 캐시에서 제거해야 합니다.
git rm --cached filename
  • .gitignore 파일은 프로젝트 루트뿐만 아니라 서브 디렉토리에도 추가할 수 있습니다. 이 경우, 해당 서브 디렉토리에만 적용됩니다.

 

결론

.gitignore 파일은 Git 저장소에서 불필요하거나 민감한 파일을 제외하여 프로젝트의 관리와 보안을 향상시키는 데 중요한 역할을 합니다. 이를 통해 프로젝트의 일관성을 유지하고, 불필요한 파일로 인해 저장소가 커지는 것을 방지할 수 있습니다. 프로젝트를 시작할 때 .gitignore 파일을 올바르게 설정하는 습관을 들이면, 보다 효율적이고 안전하게 버전 관리를 할 수 있습니다.

이 글이 도움이 되셨기를 바랍니다. 궁금한 점이 있거나 추가적인 도움이 필요하다면 댓글로 남겨주세요!