git

#15 깃(Git) - 브랜치 이동하기(git checkout)

에이블디 2021. 11. 19. 21:28

안녕하세요! 에이블디 입니다!

 

지난 시간에 3개의 브랜치를 만들었는데요!

이번 시간엔 각 브랜치에 이동하여 작업하는 방법을 알아볼게요!

 

일단 깃의 상태를 알아보기 위해 깃 로그로 깃의 상태를 알아봅시다!

그런데 이번에는 깃 로그에 --oneline이라는 옵션을 붙여볼게요!

--online 옵션은 커밋 하나를 한 줄에 간략하게 나타나게 해주는 옵션이어서 커밋을 간략하게 보고 싶을 때 사용하면 좋습니다!

$ git log --oneline

지난 포스팅에서 본 깃 로그와는 다르게 많이 간소화된 게 보이시죠?ㅎㅎ

로그를 보시면 master 3에 master, YAMA, Lucas, Charlie 브랜치가 표시된 게 보이시죠?

이건 master 브랜치뿐만 아니라 YAMA, Lucas, Charlie 브랜치에서도 최신 커밋이 master 3라는 의미입니다.

 

현재 우리는 master 브랜치에 있다는 것 기억하고 계시죠?

그럼 이제 커밋을 하나 더 해서 깃에 어떤 변화가 있는지 살펴볼게요!

branch.txt 파일에 "Jayden4"라는 내용을 추가하고 "master 4"라는 커밋 메시지와 함께 커밋해주세요.

$ vi branch.txt

$ git commit -am "master 4"

커밋까지 완료하셨다면 깃 로그로 깃의 상태를 확인해 주세요!

아까 사용했던 --oneline 옵션을 이번에도 사용하겠습니다.

$ git log --oneline

최신 커밋인 master4는 master 브랜치에만 적용되어 있는 걸 확인할 수 있네요!

YAMA, Lucas, Charlie 브랜치는 아직 master 3 커밋 상태인걸 확인할 수 있습니다.

 

그럼 이번엔 현재 master 브랜치에서 다른 브랜치로 이동해 보겠습니다.

다른 브랜치로 이동하려면 git checkout 명령을 쓰는데요, 만약에 YAMA 브랜치로 이동한다고 가정한다면 'YAMA 브랜치로 체크아웃한다'라고 합니다.

그럼 실제로 YAMA 브랜치로 체크아웃해볼까요?

git checkout 명령 뒤에 이동할 브랜치 이름을 추가로 적어주면 해당 브랜치로 이동합니다.

$ git checkout YAMA

YAMA 브랜치로 옮겨졌다고 하네요!

그럼 깃의 상태는 어떤지 깃 로그로 확인해 볼까요?

지난 시간에 master 브랜치에서 YAMA, Lucas, Charlie 브랜치를 분기하기 전까지 master 브랜치에 있었던 커밋들은 그대로 세 가지 브랜치에 복사된 것을 확인할 수 있고, 최신 커밋 해시에서 HEAD가 YAMA를 가리키고 있는걸 확인 할 수 있네요!

 

즉 YAMA 브랜치의 최신 커밋은 처음 분기될 때인 "master 3" 커밋에 있는 것입니다.

그렇다면 branch.txt 파일의 상태는 어떨까요?

한번 확인해 봅시다!

$ vi branch.txt

아까 master 브랜치에서 추가했었던 "Jayden4"가 사라졌네요!

YAMA의 최신 커밋은 master 3이기 때문에 Jayden3까지 있는 것입니다!

이를 통해 master 브랜치에 추가된 master4 커밋은 YAMA 브랜치에 영향을 미치지 않았단 것을 알 수 있습니다.

 

오늘은 이렇게 브랜치의 이동에 대해 알아보았는데요!

다음 시간에 브랜치에 대해 더 알아보도록 해요!

그럼 여러분 다음시간에 만나요!