저번에 git 사용법에 대해 알아보았습니다.
.gitignore 는 버전 관리 대상에서 제외시키고 싶은 파일을 리스트에 등록하여
관리하는 방법입니다. 사용법은 파일에 추가만 하면 되기에 매우 간단합니다.
.gitignore
파일은 프로젝트의 루트 디렉토리나 하위 디렉토리에 생성할 수 있습니다. 먼저, 텍스트 에디터를 열고 새로운 파일을 만듭니다. 이 파일의 이름을 .gitignore
라고 저장하면 됩니다.
touch .gitignore
git init 을 진행한 폴더, 즉 .git
폴더가 들어있는 디렉토리에 .gitignore
파일을 생성합니다.
위의 방법은 리눅스를 통해 추가하는 것이며, VS Code 혹은 에디터로 추가하는건 자율적인 방법입니다.
# 주석
file.js # 해당 파일만 제외
/file.js # root 경로에 있는 file.js 만 제외
folder/ # folder 폴더 전체를 제외합니다
folder/file.js # root 경로에 있는 file.js 만 제외
folder/**/file.js # folder 경로 아래에 있는 file.js 파일 모두 제외
/TODO # 현재 디렉터리에 있는 TODO 파일은 무시하고, folder/TODO 처럼 하위 디렉터리에 있는 파일은 무시하지 않음
!file.js # 제외된 파일 중 예외 파일 생성
*.log # 모든 .log 파일을 제외합니다
?.txt # 한 글자로 된 .txt 파일을 제외합니다
??.txt # 두 글자로 된 .txt 파일을 제외합니다
[a-c]*.txt # a 또는 b 또는 c로 시작하는 파일 무시 (testa.txt, testb.txt, testc.txt 등)
*[abc]* # [abc] 를 포함하는 파일 무시 (a1.txt, b1.txt, c1.txt 등)
folder/*.txt # folder/notes.txt 파일은 무시하고 folder/child/arch.txt 파일은 무시하지 않음
.gitignore
파일 내에서는 다음과 같은 기본 구문을 사용할 수 있습니다.
#
: 주석을 추가합니다.*
: 모든 문자와 일치합니다.?
: 한 글자와 일치합니다.[abc]
: 괄호 안의 문자 중 하나와 일치합니다.위의 방법이 전부라고 생각하시면 됩니다.
이 정도면 왠만한거는 다 할 수 있을거에요.
저는 .idea/ 폴더를 완전히 제외하도록 추가했습니다.
이제 .idea/ 폴더는 제외되고 .gitignore 파일이 스테이지에 올라갔군요.
*.log
!important.log
여기서 !file.js
이 어렵게 느껴질 수 있는데요
전체 .log 파일 중 important.log 는 git 에 추가해줘 라고 생각하시면 됩니다.
git config --global core.excludesfile '~/.gitignore'
현재 PC 환경에서 아예 global 설정을 하고싶다면 위와 같이 등록하시면 됩니다.
git add .
git commit -m "Apply .gitignore"
.gitignore 파일을 수정완료했다면 이제 저장소에 등록해야 합니다.
위의 명령어를 통해 예외를 등록하면 끝이 나게 됩니다.