git status 로 앞선 커밋 확인
이 단계에서는 git status를 사용하여 로컬 브랜치가 원격 브랜치보다 "앞서" 있는지 확인하는 방법을 배우겠습니다. 이는 로컬에서 커밋을 했지만 아직 원격 저장소에 푸시하지 않은 경우의 일반적인 시나리오입니다.
먼저, 프로젝트 디렉토리에 있는지 확인해 보겠습니다. 터미널을 열고 my-time-machine 디렉토리로 이동합니다.
cd ~/project/my-time-machine
이제 새 파일을 만들고 내용을 추가해 보겠습니다. 결국 커밋할 변경 사항을 만드는 것을 시뮬레이션합니다.
echo "This is a new line for the future." >> message.txt
이 명령은 "This is a new line for the future." 텍스트를 이전에 생성한 message.txt 파일에 추가합니다.
다음으로, git add를 사용하여 이 변경 사항을 스테이징합니다.
git add message.txt
이제 변경 사항을 설명하는 메시지와 함께 새 커밋을 생성해 보겠습니다.
git commit -m "Add another message to the future"
새 커밋이 생성되었음을 나타내는 다음과 유사한 출력을 볼 수 있습니다.
[master a1b2c3d] Add another message to the future
1 file changed, 1 insertion(+)
이제 로컬에 새 커밋이 있으므로 git status를 사용하여 저장소의 상태를 다시 확인해 보겠습니다.
git status
이번에는 출력이 다를 것입니다. 다음과 유사한 내용을 볼 수 있습니다.
On branch master
Your branch is ahead of 'origin/master' by 1 commit.
(use "git push" to publish your local commits)
nothing to commit, working tree clean
"Your branch is ahead of 'origin/master' by 1 commit." 줄은 로컬 master 브랜치에 origin/master 브랜치 (브랜치의 원격 버전을 나타냄) 에 없는 커밋이 하나 있음을 알려줍니다. 이는 프로젝트에서 작업하고 다른 사람과 공유하기 전에 로컬에서 변경 사항을 만드는 경우 매우 일반적인 상황입니다.
git status를 이해하는 것은 저장소의 현재 상태를 명확하게 보여주기 때문에 중요합니다. 수정된 파일, 스테이징된 변경 사항, 로컬 브랜치가 원격 브랜치와 동기화되었는지 여부를 알려줍니다. 이를 통해 작업을 추적하고 변경 사항을 원격 저장소에 푸시할 준비를 할 수 있습니다.