빈 Repository 테스트
이 단계에서는 아직 커밋이 없는 Git 저장소에서 git log 및 git rev-list --count HEAD를 실행할 때 어떤 일이 발생하는지 살펴봅니다. 이를 통해 저장소를 처음 초기화했을 때 첫 번째 랩에서 본 출력을 이해하는 데 도움이 됩니다.
먼저, 새롭고 빈 디렉토리를 만들고 그 안에 Git 저장소를 초기화해 보겠습니다. ~/project 디렉토리에 있는지 확인합니다.
cd ~/project
mkdir empty-repo
cd empty-repo
git init
빈 Git 저장소가 초기화되었음을 나타내는 메시지가 표시됩니다.
Initialized empty Git repository in /home/labex/project/empty-repo/.git/
이제 이 빈 저장소에서 git log를 실행해 보겠습니다.
git log
다음과 유사한 출력을 볼 수 있습니다.
fatal: your current branch 'master' does not have any commits yet
이 메시지는 정확히 무슨 일이 일어나고 있는지 알려줍니다. 현재 브랜치 (master) 에 커밋이 없습니다. git log는 기록을 표시하려면 커밋이 필요하므로 표시할 내용이 없다고 보고합니다.
다음으로, git rev-list --count HEAD를 시도해 보겠습니다.
git rev-list --count HEAD
이번에는 출력 결과가 다음과 같습니다.
0
이것은 이해가 됩니다! 커밋이 없으므로 HEAD에서 도달할 수 있는 커밋 수는 0 입니다.
이러한 명령의 출력을 빈 저장소와 (하나의 커밋이 있는) my-time-machine 저장소와 비교하면 이러한 명령이 수행하는 작업을 더 잘 이해할 수 있습니다. git log는 커밋의 세부 정보를 표시하고, git rev-list --count는 간단한 수를 제공합니다. 두 명령 모두 저장소 기록의 상태를 정확하게 반영합니다.
이제 다음 단계에 필요하지 않으므로 empty-repo 디렉토리를 제거할 수 있습니다.
cd ~/project
rm -rf empty-repo