Hayden's Archive

[Git] 프로젝트시 필요한 .gitignore 파일과 .gitkeep 파일 본문

Study/DevOps

[Git] 프로젝트시 필요한 .gitignore 파일과 .gitkeep 파일

_hayden 2020. 11. 5. 20:58

프로젝트를 생성할 때는 다음의 순서를 거치는 것이 좋다.

 

1. 먼저 프로젝트 디렉토리를 생성하고 초기화한다.(git init)

2. .gitignore를 수정하여 변경사항에 반영하지 않을 파일 또는 경로를 지정한다. 예컨대 보안상 중요한 파일이나 작업하는 OS 환경이나 IDE에 따라 달라질 수 있는 파일은 .gitignore에 추가하는 것이 좋다.

3. 이제 이클립스, 인텔리제이 등의 IDE를 사용하여 프로젝트를 생성하고 커밋 후 푸시한다.

4. 이제 팀원들과 작업을 시작하면 된다.

 

.gitignore를 작성할 때 www.toptal.com/developers/gitignore 를 참고하면 편리하다.

 

그런데 .gitignore을 처음부터 미리 잘 작성해두면 참 좋겠지만, 이미 변경사항 기록에 제외할 파일들을 다 생성한 후 뒤늦게 .gitignore에 추가하는 경우도 종종 있다.

그럴 경우 이미 쌓인 캐시 때문에 .gitignore가 적용되지 않는다.

 

그 때는 아래의 명령어를 작성해서 커밋하면 된다. ( 참고 : jojoldu.tistory.com/307 )

$ git rm -r --cached .
$ git add .
$ git commit -m "fixed untracked files"

 

 

프로젝트 작업을 하다 보면 .gitkeep 파일이 필요한 경우도 생긴다. 

git은 파일이 존재하지 않는 비어있는 폴더는 변경사항에 기록하지 않는다. 이 경우 빈 디렉토리를 commit하기 위해서 이 안에 임의로 .gitkeep 파일을 만들어서 넣어둔다.

.gitkeep은 .gitignore와 아무런 상관이 없는 파일이며 그냥 자리만 지키고 있는 dummy 파일이다.

 

아래 touch 명령어를 사용하여 빈 디렉토리 아래 .gitkeep 파일을 만들 수 있다.

$ touch 디렉토리명/.gitkeep 
$ git add .
$ git commit -m "Adding my empty directory"

 

빈 디렉토리를 커밋한 후 이후의 변경사항을 기록하지 않으려면 .gitignore에 아래와 같이 추가해준다.

# ignore files in folder 디렉토리명
디렉토리명/*
# but keep the folder by keeping .gitkeep file
!디렉토리명/.gitkeep

 

참고한 블로그는 다음과 같다. valuefactory.tistory.com/618