Git을 사용하여 개발, 배포등의 프로세스를 사용할 경우 동기화, 즉 서버에 반영하지 말하야 할 파일이나 폴더가 존재합니다. 예를들면 방문자에 의해 바뀌는 파일 업로드나 아니면 개발자 각각의 설정 파일 등이 그런 것들입니다.

그렇다면 이런 파일을 서버와 동기화하지 않고 무시하려면 어떻게할까요? 이때 .gitignore를 사용하면 되는데요 아래에서 알아봅니다.



# Git 사용시 파일 및 폴더 무시, 동기화하지 않는 방법
git 레포지토리와 동기화하지 않을 내용을 설정해야하는데요 방법은 .gitignore 파일을 만들고 이 파일을 로컬 레포지토리에 위치시키면 됩니다. 만약 파일이 없는 경우에는? 새로 파일을 생성합니다.


@ .gitignore 파일 생성 후 패턴 입력
파일을 생성한 후에는 파일 안에 무시 할 경로나 파일에 대하여 설정해야 합니다. 이 때 설정 방법은 패턴을 만들어 일치하는 경우 ignore를 적용하게 됩니다. 그럼 패턴 문법을 알아봅니다.


! .gitignore 패턴 적용하는 방법
gitignore를 설정하기 위해서는 특수문자 및 기호를 사용하는 패턴 방식을 적용합니다. 아래에서 하나씩 알아봅니다.

@ **/test
** 두 개를 표시하면 어디 경로에 있던지 해당 패턴을 적용하게됩니다. 즉 위와 같이 사용되면 test라는 디렉토리는 root 또는 어디 위치에 있던 동기화되지 않도록 적용하게 되죠.
Ex)
/home/test
/abc/def/test
/test


@ *.jpg
이번에는 * 기호 하나를 사용했는데요 모든 파일 이름에 해당하게됩니다. 이처럼 jpg 확장자를 가진 모든 다른 이름의 파일이 ignore 패턴에 일치하게됩니다.
Ex)
abc.test
def.test


@ /test.jpg
최상위 루트(root) 위치를 기준으로 설정하는 경우입니다. 이 경우 최상위에 위치한 test.jpg만 무시하게 됩니다.
Ex)
/test.jpg
/nope/


@ /test/*
특정 폴더 하위의 모든 파일을 설정하는 방법으로 아래와 같이 적용할 수 있습니다.
/nope/*


이 외의 패턴들은 계속해서 업데이트 하도록 하겠습니다.