Chapter 1 여러명이 Git으로 협업하기
원격 저장소에서 협업하기 : 브랜치(Branch)
- 특정 기준에서 줄기를 나누어 작업할 수 있는 기능
- [HEAD] 포인터 : 브랜치 혹은 커밋을 가치키는 포인터로 브랜치 사이를 마음대로 넘나들 수 있음
과거 커밋으로도 이동 시킬 수 있음 -> 분리된 HEAD(Detached HEAD)
브랜치 이동하기 : 체크아웃(Checkout)
브랜치와 브랜치를 합치기 : 병합(Merge, 머지)
브랜치를 기준으로 병합한다?
[master] 브랜치를 기준으로 병합한다는 것은 합친 결과물을 [master] 브랜치에 반영한다는 것
빨리 감기 병합(Fast-forward)
대상 브랜치의 커밋이 현재 브랜치보다 앞서있는 경우 새로 만들어 줄 필요 없이 대상 브랜치로 상태를 바꿔주는 것
브랜치 충돌(Conflict)
- 두 커밋이 서로 같은 코드를 수정했다면 병합 커밋 시 충돌
<<<<<<<HEAD
3. 장바구니 담기
======= // 를 기준으로 위랑 아래랑 다른 브랜치
3. 디테일 페이지 보여주기
>>>>>>> master
수동으로 필요 없는 라인을 삭제하고, 충돌난 곳을 수정
브랜치를 합치는 예의바른 방법 : 풀 리퀘스트 (Pull Request)
- 협력자에게 브랜치 병합을 요청하는 메시지를 보내는 것
개발 완료 후 출시 : 릴리즈(release)
- 태그(tag)를 통해 특정 커밋에 포스트잇 붙이기