[Git&Github] .gitignore 파일의 역할과 존재이유

리졔·2023년 8월 6일
0

📌 .gitignore 파일이란?

Git 버전 관리에서 제외할 파일 목록을 지정하는 파일이다.

Git으로 프로젝트를 관리할 때, 그 프로젝트 안의 특정파일들은 Git으로 관리할 필요가 없는 경우가 있다. 예를 들어, 개인적인 정보가 담긴 파일이나 NodeJS-Express로 개발할 때 npm module 등은 보통 Git 저장소에 포함시키지 않는 것이 좋다.
.gitignore 파일은 이러한 제외할 파일들의 목록을 기록하여 Git이 해당 파일들을 무시하도록 지시한다. 이렇게 하면 프로젝트를 클론(clone)하거나 push할 때 Git 저장소에 제외된 파일들이 포함되지 않는다.



📌 .gitignore 파일의 역할과 존재 이유


  • 불필요한 파일 제외
    프로젝트 개발과 무관하거나 빌드 과정에서 생성되는 임시 파일, 컴파일된 결과, IDE 설정 파일 등의 불필요한 파일들을 Git 저장소에 포함하지 않음으로써 저장소 용량과 클론 속도를 최적화할 수 있다.

  • 보안과 개인 정보 보호
    .gitignore를 사용하여 암호나 API 키, 인증 토큰 등과 같이 보안에 민감한 정보가 담긴 파일을 Git으로 관리하지 않도록 한다. 이를 통해 개인 정보 유출 등의 보안 문제를 방지할 수 있다.

  • 버전 관리에서 제외
    일부 파일들은 개발자마다 다를 수 있으며, 특정 환경에 종속적인 설정 파일들이 있을 수 있다. 이러한 파일들은 버전 관리를 통해 공유할 필요가 없으므로 .gitignore를 통해 Git 저장소에서 제외한다.



📌 .gitignore 파일 만들기


.gitignore은 자신이 이용하는 에디터의 .git파일이 존재하는 곳과 같은 디렉토리에 생성하면 된다. 그 후에 Git의 추적(track)을 피하고 싶은 파일명들을 위에서 만들어준 .gitignore파일에 적어주면 된다.

그런데 이미 Git 버전 관리에 들어가 있는 파일들은 .gitignore파일에 적용한다고 해서 제외되지 않고, 계속해서 Git이 해당 파일들을 추적하고 있는데 어떻게 해야 할까?



📌 Github에 있는 파일 삭제 후, .gitignore 적용하기


이 때는, 수동으로 해당 파일들을 버전 관리에서 제외시켜줘야 한다.
//현재 레퍼지토리의 캐시 모두 삭제
$git rm -r --cashed.

// .gitignore에 넣은 파일 목록들을 제외한, 모든 파일들을 다시 추적하도록 한다.
$git add .

$git status

$git commit -m "커밋 메세지"


🙋 .gitignore 을 쉽게 사용할 수 있도록 해주는 사이트


>> gitignore.io (https://www.toptal.com/developers/gitignore)

0개의 댓글