본문 바로가기

-

[github] .gitignore 파일 사용방법

1. .gitignore 파일이란?

 

버전 관리가 필요하지 않은 파일이나 디렉토리는 무시하라고 git에게 알려줘야할 때 사용하는 파일

 

2. 버전 관리가 필요하지 않은 경우

 

프로젝트를 설치하고 나면 생성되는 node_modules 디렉토리에는 npm으로부터 내려 받은 라이브러리 코드가 저장되어 있다. 이 디렉토리의 용량이 너무 클 수 있기 때문에 .gitignore 파일에는 항상 node_modules가 포함되어 있다.

 

이처럼 버전 관리가 꼭 필요하지 않은 경우가 몇가지 존재한다.

  • /vendor 또는 /node_modules 와 같은 종속성 디렉토리
  • 로그, 잠금, 캐시 또는 임시 파일과 같은 런타임 파일
  • 암호 또는 API 키와 같은 중요한 정보가 있는 파일
  • .class 또는 .o와 같은 컴파일된 코드
  • .DS_Store 또는 Thums.db
  • IDE 또는 텍스트 편집기 구성 파일

 

 

3. 적용 방법

 

적용 방법은 간단하다. .gitignore 파일에 버전 관리가 필요하지 않은 파일이나 디렉토리의 이름을 써주면 된다.

#은 주석으로 사용가능하다.

 

파일명 형식

# 확장자가 .js 인 파일은 무시
*.js

# .js 파일들은 모두 무시되지만, test.js만은 무시하지 않음
!test.js

# 현재 디렉토리에 있는 /test.js파일은 무시되지만,
# subDir/test.js 같이 특정 디렉토리 하위에 있는 test.js는 무시되지 않음
/test.js

# node_modules/ 디렉토리에 있는 모든 파일을 무시
node_modules/

# src/ 하위의 .js파일만 무시
src/*.js

# src/ 하위에 존재하는 모든 디렉토리의 .txt 파일을 무시
src/**/*.txt

# 현재 디렉토리와 그 하위 디렉토리 내에 존재하는 모든 .js 파일을 무시
/**/*.js

# 현재 디렉토리 내에 존재하는 모든 .js .ts 파일 무시
/*.{js, ts}

# 현재 디렉토리 내에 있는 ex1.js ex2.js ex3.js 파일 무시
/ex[1-3].js

 

 

4. 추적 중인 파일 제외 시키는 방법

 

이미 git에서 버전 관리가 되고 있는 파일을 .gitignore 파일에 추가한다고 해서 제외되는 것은 아니다.

해당 명령어를 터미널에 입력해 수동으로 제외시켜줘야한다.

git rm -r --cached .
// 현재 레포지토리의 캐시 모두 삭제

git add .
// 다시 파일 추가

git commit -m ''
// 반드시 커밋

 

 

5. .gitignore.io

 

자신의 프로젝트 환경을 입력하면 자동으로 .gitignore 파일을 생성해주는 사이트이다.

간편하게 .gitignore 파일을 만들기 위해 많이 사용하는 것 같다!

 

gitignore.io

Create useful .gitignore files for your project

www.toptal.com