Notice
Recent Posts
Recent Comments
Link
«   2024/10   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

나의 지식 보관소

Git 브랜치 본문

Git

Git 브랜치

야식은진리다 2020. 4. 26. 05:31

브랜치란 원래의 코드에서 분리하여 독립적으로 어떤 작업을 진행할수있게 해주는 개념이다.

 

새 브랜치 생성하기

브랜치를 생성하는 방법은 아래와 같이 git branch 명령으로 할 수 있다.

$ git branch test 를 실행해보면

그림과 같이 test라는 새로운 브랜치가 생성되고 작업하고 있던 마지막 커밋을 가리키게 된다. 여기서 master 브랜치는 처음 자동으로 생성되는 브랜치이고, 동그라미로 표시된것은 생성된 커밋들이다.

 

그리고 HEAD라는 지금 작업중인 브랜치를 가리키는 특별한 포인터가 master 브랜치를 가리키고 있다.

 

브랜치 이동하기

지금 HEAD가 master를 가리키고 있으므로 test브랜치에서 작업하기 위해서는 HEAD를 옮겨 주어야한다.

아래와 같이 git checkout 명령으로 다른 브랜치로 이동할수있다.

$ git checkout test 명령을 실행하고 나면 HEAD가 test 브랜치를 가리키게 된다.

 

이제 이 상태에서 새로운 커밋을 등록하게 되면 다음과 같은 상태가 된다.

그림을 보면 master은 여전히 3번 커밋을 가리키는데 test는 4번커밋으로 이동한것을 볼수있다. 이것이 바로 branch의 핵심이다.

 

이제 다시 checkout명령을 통해 master브랜치로 이동하면 다음과 같은 상태가 된다.

이제 HEAD가 master 브랜치를 가리키게 되었으므로 워킹디렉토리의 상태 또한 master브랜치가 가리키고 있는 3번 커밋으로 되돌아가게된다. 이 상태에서 또 커밋을 하게 되면 다음과 같이 프로젝트 히스토리가 분리되어 진행된다.

이렇게 갈라진 브랜치는 $ git log --oneline --decorate --graph --all 명령을 통해 쉽게 확인할 수 있다.

'Git' 카테고리의 다른 글

3-way merge  (0) 2020.04.27
Git Merge(병합)  (0) 2020.04.26
Git Alias(사용자 지정 명령)  (0) 2020.04.26
Git 태그 ( Tag )  (0) 2020.04.25
Git 리모트 저장소  (0) 2020.04.23