본문 바로가기
일상/공부

.gitignore 작성하기

728x90
반응형

.gitignore란


.gitignore는 git repository에 추가하고 싶지 않은 파일을 제외시켜주는 설정파일이다.

 

 

git은 형상관리는 아래의 3가지 영역을 통해 진행된다.

  • working directory : 내가 작업하고 있는 공간
  • staging area : 커밋을 하기 위해 git add로 추가한 파일들이 모여있는 공간
  • git repository : 커밋들이 모여있는 장소

(따라서 git은 다른 형상관리 시스템과 다르게 소스코드를 추가/변경하지 않더라도 이를 인지하지 못해 git add 명령을 통해서만 인식할 수 있다)

 

 

우리는 commit을 하기 위해  git add  를 통해 커밋할 파일들을 추가하게 되면 git repository에 바로 올라가는 것이 아니라, staging area에 올라가게 된다. 그후 우리가  commit 을 하게 되면 최종적으로  git repository에 저장이 된다.

이때, gitignore에 정의된 파일은 staging area에 올라가지 않아 tracking 되지 않기 때문에 git status를 이용했을 때 보이지 않는다.

 

 

 

 

 

혹시 git의 staging area에 대해 조금 더 자세히 알고 싶다면 아래글을 참고하자

파일관점의 staging에 대해 자세히 알 수 있다

 

[Git] 형상관리와 Git (3편) - Git 스테이징 단계 이해

Git 스테이징단계 이해Git은 다른 형상 관리시스템과 다르게 소스 코드를 직접 추가하거나 변경하지 않더라도 이를 인지하지 못하며 Git add 명령을 통해서만 인식할 수 있다. => Git의 형상 관리가 3

cornswrold.tistory.com

 

Git의 Staging Area는 어떤 점이 유용한가

Git에는 Staging Area라는 공간이 있다. 어떤 변경사항이 저장소에 커밋되기 전에, 반드시 거쳐야만 하는 중간단계이다. 다른 버전관리도구에는 이에 정확히 대응하는 것은 없다. 저장소가 추적하는

blog.npcode.com


.gitignore작성법


github/gitignore 

깃허브에서는 대부분의 언어에 대한 .gitignore 파일을 만들어서 제공하고 있다

 

GitHub - github/gitignore: A collection of useful .gitignore templates

A collection of useful .gitignore templates. Contribute to github/gitignore development by creating an account on GitHub.

github.com

 

 


 

 

개인적으로 gitignore를 따로 작성하고 싶다면 해당 규직에 따라 .gitignore에 직접 파일이나 폴더이름을 작성하면 된다.

특정폴더에 있는 전체 파일 무시하기

/폴더이름

testfolder

 

특정 확장자 전체 무시

*.확장자명

*.css

 

특정 파일무시

파일명

ignore.c
디렉토리(폴더) 명/파일명

study_c/ignore.c

 


이미 올라간 파일 gitignore 적용하기


이미 repository에 commit으로 올라간 파일을  .gitignore에 추가하여 적용하기 위해서는 먼저 파일을 제거해야 한다.

파일제거하기

git rm 파일명
git commit-m 메시지

 

.gitignore를 통해 파일에서 제외하기

파일명

ignore.c

 

반응형