이 글은 Github의 공식가이드 문서를 혼자 조용히 번역한 글입니다. 예시와 이미지 모두 가져왔습니다.
브랜치는 동시에 하나의 리포지터리에서 서로 다른 버전의 작업을 할 수 있는 방법이다.
기본적으로 리포지터리에는 최종 브랜치로 간주되는 main
브랜치가 하나 존재한다. 일반적으로 main
으로 커밋하기 전에 브랜치에서 실험하고 편집한다.
main
브랜치에서 새로운 브랜치를 만드는 건, 그 당시 main
브랜치의 사본을 만들거나 캡처본을 얻는 것과 같다. 만일 당신이 본인의 브랜치에서 작업 중인데 다른 사람이 main
브랜치 내용을 바꾸었다면, 업데이트 사항을 가져올(pull) 수 있다.
이 다이어그램은 다음을 보여준다:
main
브랜치feature
라는 새로운 브랜치 (이 브랜치에서 ‘feature 작업’을 진행)feature
브랜치가 main
으로 merge되기 전의 여정 (참고: 이미지는 옛날 거라 master
가 적혀 있으나 main
으로 이해하면 맞다.)
이런 식의 여러 버전의 파일을 만들어 본적이 있는가:
story.txt
story-joe-edit.txt
story-joe-edit-reviewed.txt
브랜치는 깃헙의 리포지터리와 비슷한 목표를 달성한다.
GitHub의 개발자, 라이터 및 디자이너는 main
(제품) 브랜치와 별도로 버그 수정 및 기능 작업을 유지하기 위해 브랜치를 사용한다. 변경할 준비가 되면 해당 브랜치를 main
으로 병합한다.
hello-world
리포지터리로 이동한다.readme-edits
라고 브랜치 이름을 입력한다.이제 main
그리고 readme-edits
라는 두 개의 브랜치가 있다. 둘은 완전히 같아 보이지만, 곧 아니라는 걸 알게 된다. 이제 변경사항을 새로운 브랜치에 추가해보자.