2012. 11. 14. 08:50
Git, GitHub
Git을 가장 효율적으로 사용할 수 있는 방법에 대하여 번역해 놓은 글을 읽었다. 가장 합리적이면서 다양한 경우의 수에 대비한 적용 방식이 아닐까 하는 생각이 든다
원문 : Git Branch 전략
- origin/master <-> origin/develop 영원히 가져가는 핵심 브랜치
- master –>(create) develop –>(merge) master
- 이름 : develop-*, master-*
- master : production ready 코드
- develop : integration 코드 (통합) – daily CI build
- master 로 merge 할 때 배포 버전 태그 달음 : master commit 시 자동 빌드 수행
- develop –> master로 가기 전 release 브랜치를 반드시 거친다
- feature / release / hotfix 보조 브랜치
- feature 브랜치
- 조만간 배포할 기능을 개발 (배포할 수도 안 할 수도 있는 기능)
- 이름 : feature-*
- develop –>(create) feature –>(merge) develop
- 맘에 안드는 기능이면 delete 한다.
- feature는 개발자 저장소에 commit 하고, origin에 push하지 않는다
- release 브랜치
- 제품 배포를 준비하는 브랜치
- 이름 : release-*
- 버전 번호를 부여함
- develop->(create) release –>(merge) develop, master
- 발견된 버그가 있다면 release에서 해결하고 develop에 merge
- 진짜 배포할 상태가 되었을 때 master로 merge 하고 tag를 단다 (명령어들은 원문 참조)
- hotfix 브랜치
- 이미 배포한 운영버전에 문제를 해결하기 위해 만듦
- 이름 : hotfix-*
- master –> (create) hotfix –> (merge) develop, master
- 치명적 버그의 발견 즉시 해결하기 위해 master 브랜치의 tag에서 create 한다
각 브랜치 정책에 따라 개발을 해보자
'Git, GitHub' 카테고리의 다른 글
[Git] commit 사용하기 (0) | 2012.11.26 |
---|---|
[Git] diff 사용하기 (0) | 2012.11.22 |
[Git] Ubuntu 에 설치하기 (0) | 2012.11.14 |
SVN에 대하여 이해하기 (0) | 2012.09.20 |
[Git] 레퍼런스 모음 (0) | 2012.09.10 |