FRONT-END/VS & GITHUB

[Git] .gitignore을 사용해 git에 추가되지 말아야 할 파일 정의하는방법

서근 2022. 10. 7. 12:21
반응형

gitignore 사용해
git에 추가되지 말아야 할 파일 정의하는 방법에 대해 알아보겠습니다.

gitignore

.gitignore 파일이란?

.gitignore 파일은 Git의 root 디렉터리에 저장되어, Git Repository나 Staging Area에 추가되지 말아야 하는(무시되어야 하는) 폴더나 파일을 정의하는 파일이다. .gitignore에 정의된 파일은 Staging Area에 올라가지 않기 때문에 tracking 되지 않는다. 따라서 git status 를 이용했을 때 보이지 않는다.

Git에 추가되지 말아야 할 파일 정의

특정 항목별로 무시해야 하는 파일을 알아보기 전에 어떻게 git안에 추가하는지 간단하게 알아보자면 다음과 같습니다.

폴더 전체 무시

다음 줄을 추가하여 특정 폴더에 있는 전체 파일을 무시할 수 있습니다.

/[folder name]

예를 들어 Example이라는 폴더가 있다고 가정했을 때, 이 내부에 있는 파일을 모두 무시하기 위해서는 .gitignore 파일에 아래 줄을 추가하면 됩니다.

/Example

특정 확장자 전체 무시

다음 줄을 추가하여 특정 확장자 전체를 무시할 수 있습니다.

*. [무시하고 싶은 확장자]

예를 들어 모든 log 확장자 파일을 무시하고 싶다면 .gitignore 파일에 아래 줄을 추가하면 됩니다.

*.log

특정 파일 무시

다음 줄을 추가하여 특정 파일을 무시할 수 있습니다.

[디렉터리 명]/[파일 명]
Example/Example.log

만약 Root Directory(git 최상위 디렉터리)에 있는 파일을 무시하고 싶을 경우에는 디렉터리 명 없이 파일명만 넣어주면 됩니다.

[파일 명]
Example.log

DS_STORE

루트 디렉터리에 있는 .DS_STORE 파일은 MacOS에서 만든 파일인데 맥os나 윈도우에는 보이지 않는 임시파일이 존재합니다. git은 디렉터리에서 모든 파일을 참조할 수 있는데, 이 때문에 .DS_STORE이라는 파일이 존재합니다. 하지만 git에 커밋할 때 커밋할 필요성이 없는 파일이죠. 이때 대표적으로 .gitignore을 사용하여 제외해주는 파일이 바로 .DS_STORE입니다.

 

.DS_STORE은 최상위 디렉터리에 존재하기 때문에 아래 구문을 추가해주면 됩니다.

.DS_STORE

주의 사항

이미 Staging AreaL Repository에 커밋으로 올라간 파일을 .gitignore 하기 위해서는 먼저 파일을 제거해야 합니다. 파일 제거는 다음 명령어로 가능합니다.

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

예를 들어 루트 디렉터리에 app.log 파일이 이미 커밋으로 올라가져 있는 경우 다음과 같은 명령어를 통해 제거가 가능합니다.

git rm app.log
git commit -m "app log 제거"

제거가 완료되었다면, 다시 .gitignore을 통해 파일에서 제외시켜주면 됩니다.


오늘은 이렇게 .gitignore을 사용해 git에 추가되지 말아야 할 파일 정의하는 방법에 대해 알아보았습니다.

 

읽어주셔서 감사합니다🤟