과제 시작 전 새로운 자바 프로젝트를 만들고 프로젝트 디렉토리에서 git init을 수행했다.

이후 패키지를 만들었고, 프로젝트 껍데기를 커밋하기 위해 git status 명령어를 입력했다.
그런데 원래 생각대로 라면 패키지 디렉토리가 추적되어야 하는데 빌드와 설정 디렉토리만 추적되고 있었다.
그래서 엄한 .gitignore 파일을 확인해보기도 하고 프로젝트를 지웠다 만드는 시도를 해봤지만 여전히 해결되지 않았다.
그래서 구글링 해보았고 다음의 게시글들을 찾을 수 있었다.
https://stackoverflow.com/questions/115983/how-do-i-add-an-empty-directory-to-a-git-repository
How do I add an empty directory to a Git repository?
How do I add an empty directory (that contains no files) to a Git repository?
stackoverflow.com
Git FAQ - Git SCM Wiki
OBSOLETE CONTENT This wiki has been archived and the content is no longer updated. Please visit git-scm.com/doc for up-to-date documentation. General Questions What is Git? Git is a distributed version control system developed by Junio Hamano and Linus Tor
archive.kernel.org
결론은 빈 디렉토리는 기본적으로 트래킹 되지 않아 staging area에 올릴 수 없다는 것이다.
어차피 이번 경우엔 패키지 내에 자바 파일들을 생성해야 하기 때문에, 빈 자바 파일을 만들어 add - commit 했고 문제를 해결할 수 있었다.
하지만 빈 디렉토리만을 repository에 올려야 할 때는 디렉토리 내 .gitkeep파일을 추가하는 방법으로 해결가능하다.

빈 디렉토리만을 추가했을 땐 추적되지 않는 걸 확인할 수 있다.

빈 디렉토리 내에 .gitkeep을 추가한 뒤로는 추적이 잘 되는 모습이다.
정리
빈 디렉토리는 기본적으로 추적 안된다. 따라서 디렉토리 내에 파일을 추가해야 한다.
다만, 빈 디렉토리만을 커밋하고 싶을 땐 .gitkeep을 이용하자.
'Git' 카테고리의 다른 글
| .git디렉토리를 다른 디렉토리에 복사하면? (0) | 2023.03.30 |
|---|---|
| .gitignore 추가해도 untracked 되지 않을 때 해결 방법 (0) | 2023.03.30 |
| Git 커밋 컨벤션 (0) | 2022.10.31 |