: 코드를 통째로 복사하고 나서, 원래 코드와 독립적으로 개발하는 것
브랜치 사이를 자유롭게 이동할 수 있으며, 여러 브랜치를 만들어 작업한 후 나중에 merge할 수도 있다.
git branch [name]
: 새로운 브랜치를 만드는 명령어
git branch testing # testing이라는 새로운 브랜치를 만든다.
Git에서는 현재 작업 중인 브랜치를 HEAD라는 포인터가 가리킨다.
git branch
명령어는 브랜치를 만들기만 하고 브랜치를 옮기지는 않으므로 Git은 아직 master 브랜치를 가리키고 있다..git log --decorate
git log --decorate
:git log
명령에--decorate
옵션을 사용하면, 브랜치가 어떤 커밋을 가리키는지 확인할 수 있다.git log --decorate commit f30ab (HEAD -> master, testing) # master 브랜치와 testing 브랜치가 f30ab 커밋을 가리킨다.
git checkout [branch]
: 다른 브랜치로 이동하는 명령어
git checkout testing # testing 브랜치로 이동한다. (이제 HEAD는 testing 브랜치를 가리킨다.)
git checkout -b [name]
: git checkout
명령어에 -b
옵션을 함께 사용하면, 새로운 브랜치를 생성하는 동시에 그 브랜치로 이동한다.
git checkout -b testing # testing이라는 새로운 브랜치를 만들고 그 브랜치로 이동한다.
git branch
명령어를 옵션 없이 사용하면 브랜치 목록 전체를 확인할 수 있다.
현재 선택된 브랜치에는 *
이 표시된다.
git branch
testing
* master
git merge [branch]
: 브랜치를 병합하는 명령어
만약 master 브랜치에서 testing 브랜치를 병합하고 싶다면, 먼저 master 브랜치에 HEAD가 위치하도록 해야 한다.
git checkout master # master 브랜치로 이동한다.
git merge testing # 현재 브랜치(master)에 testing 브랜치를 병합한다.
❔ 학습 후 궁금한 점
- git stash 사용법
이 글은 아래 링크를 참고하여 작성한 글입니다.
https://git-scm.com/book/ko/v2/Git-%EB%B8%8C%EB%9E%9C%EC%B9%98-%EB%B8%8C%EB%9E%9C%EC%B9%98%EB%9E%80-%EB%AC%B4%EC%97%87%EC%9D%B8%EA%B0%80