[Git] Git Branch

CloudCoke
|2022. 11. 24. 23:47

Git Branch

Git에서 Branch란 한 줄로 이어지던 커밋을 나무의 나뭇가지가 뻗어나가듯 커밋을 여러 줄로 만드는 것입니다.

Branch를 만드는 이유

잘 작동하는 코드를 작성하고 그 코드에 새로운 기능을 추가 싶어서 작업을 추가적으로 작업을 진행하다 보면 커밋이 계속 쌓이게 됩니다. 

그러다 만약 그 기능을 추가하지 않기로 한다면 어떻게 해야 할까요?

아마 revert를 이용해 되돌리거나 reset을 이용해 되돌리려 할 겁니다.

하지만 Branch를 이용해 작동하는 부분(main)은 그대로 두고 옆으로 가지를 만들어서 작업을 하면 어떨까요?

추가하고 싶지 않다면 가지를 지우거나 그대로 두어도 작동하는 부분(main)에는 영향을 미치지 않을 것입니다.

그렇다면 이제부터 Branch를 다루는 명령어를 알아봅시다!

Branch 확인하기

이 명령어를 사용하게 되면 내가 어떤 브랜치에 위치했는지 알 수 있습니다. (* 표시가 붙은 곳이 위치한 곳)

Branch 만들기

브랜치를 새로 만드는 명령어입니다.

Branch 바꾸기

새로 만든 브랜치로 이동하고 싶다면 다음과 같은 명령어를 사용하면 됩니다.

Branch 생성하면서 이동하기

브랜치를 생성하면서 이동하고 싶다면 다음 명령어를 사용하면 됩니다.

Branch 삭제

브랜치가 필요 없어졌다면 다음 명령어로 브랜치를 삭제할 수 있습니다.

주의할 점은 삭제하지 않는 브랜치로 이동한 뒤 브랜치를 삭제해야 한다는 점입니다.

Branch 이름 바꾸기

브랜치 이름이 마음에 들지 않아 바꾸고 싶다면 다음 명령어를 사용하면 됩니다.

Branch 합치기

여러 브랜치에서 작업을 하다 한 브랜치로 합치고 싶다면 다음 두 가지 명령어를 사용하면 됩니다.

두 가지 명령어의 차이점은 그래프가 그려지는 모습입니다.

merge

이 명령어는 기준이 되는 브랜치로 다른 브랜치를 끌어당겨서 하나로 합칩니다.

출처 : https://0314625.tistory.com/211

명령어를 사용하는 방법은 다음과 같습니다.

merge 취소하기

 

rebase

이 명령어는 선택한 브랜치를 이동시켜 원하는 브랜치에 정렬합니다.

출처 : https://giphy.com/gifs/synergic-BhjjlbtFCx8iObvLxt

명령어를 사용하는 방법은 다음과 같습니다.

rebase 취소하기

만약 정렬을 하다 충돌이 났을 때 이전 상태로 돌아가고 싶다면 아래 명령어로 취소를 할 수 있습니다.

rebase 진행하기

충돌이 났을 때 충돌이 난 부분을 수정해 충돌을 해결한 다음 아래 명령어를 사용하면 rebase가 다시 진행됩니다.

'Git' 카테고리의 다른 글

[Git] 이전 commit으로 돌아가는 명령어  (0) 2022.11.23
[Git] Git의 작업 영역 & Git 기본 명령어  (0) 2022.11.23