Chapters ▾
-
1. 시작하기
-
2. Git의 기초
- 2.1 Git 저장소 만들기
- 2.2 수정하고 저장소에 저장하기
- 2.3 커밋 히스토리 조회하기
- 2.4 되돌리기(Undo)
- 2.5 리모트 저장소
- 2.6 Tag(Tag)
- 2.7 팁과 트릭
- 2.8 요약
-
3. Git 브랜치
- 3.1 브랜치란 무엇인가?
- 3.2 브랜치와 Merge의 기초
- 3.3 브랜치 관리
- 3.4 브랜치 Workflow
- 3.5 리모트 브랜치
- 3.6 Rebase하기
- 3.7 요약
-
4. Git 서버
- 4.1 프로토콜
- 4.2 서버에 Git 설치하기
- 4.3 SSH 공개키 만들기
- 4.4 서버 설정하기
- 4.5 공개하기
- 4.6 GitWeb
- 4.7 Gitosis
- 4.8 Gitolite
- 4.9 Git 데몬
- 4.10 Hosted Git
- 4.11 요약
-
5. 분산 환경에서의 Git
- 5.1 분산 환경에서의 Workflow
- 5.2 프로젝트에 기여하기
- 5.3 프로젝트 운영하기
- 5.4 요약
-
6. Git 도구
- 6.1 리비전 조회하기
- 6.2 대화형 명령어
- 6.3 Stashing
- 6.4 히스토리 단장하기
- 6.5 Git으로 버그 찾기
- 6.6 서브모듈
- 6.7 Subtree Merge
- 6.8 요약
-
7. Customizing Git
- 7.1 Git 설정하기
- 7.2 Git Attribute
- 7.3 Git 훅
- 7.4 정책 구현하기
- 7.5 요약
-
8. Git과 다른 VCS
- 8.1 Git과 Subversion
- 8.2 Git으로 옮기기
- 8.3 요약
-
9. Git의 내부구조
- 9.1 Plumbing 명령과 Porcelain 명령
- 9.2 Git 개체
- 9.3 Git 레퍼런스
- 9.4 Packfile
- 9.5 Refspec
- 9.6 데이터 전송 프로토콜
- 9.7 운영 및 데이터 복구
- 9.8 요약
Chapter 3
Git 브랜치
버전 관리 시스템은 모두 브랜치를 지원한다. 개발을 하다 보면 코드를 여러 개로 복사해야 하는 일들이 자주 생긴다. 코드를 통째로 복사하고 나서 원래 코드와는 상관없이 독립적으로 개발을 진행한다. 이렇게 독립적으로 개발하는 것이 브랜치다.
버전 관리 시스템에서 브랜치를 만드는 과정은 보통 고생스럽다. 브랜치를 만들고자 개발자는 수동으로 소스코드 디렉토리를 복사하는 등의 일을 해야 하고 소스코드의 양이 많으면 브랜치를 만드는 시간도 오래 걸린다.
사람들은 브랜치 모델이 Git의 최고의 장점이라고, Git이 다른 것들과 구분되는 특징이라고 말한다. 당최 어떤 점이 그렇게 특별한 것일까? Git의 브랜치는 매우 가볍다. 순식간에 브랜치를 새로 만들거나 브랜치 사이를 이동할 수 있다. 다른 버전 관리 시스템과는 달리 Git은 브랜치를 만들어 작업하고 나중에 Merge하는 방법을 권장한다. 심지어 하루에 수십 번씩이라고 해도 괜찮다. Git 브랜치에 능숙해지면 개발 방식이 완전히 바뀌고 다른 도구로 대체할 수 없게 된다.