branching workflow

Branching Workflows

이번에는 브랜치를 이용한 워크 플로우에 대해서 알아본다.

Long-Running Branches

깃은 장기적으로 브랜치를 열어두고 새로운 브랜치에서 병합하는것이 굉장히 쉬운 편이다. 이를 활용해서 git에서 많이 사용하는 개발 플로우가 있다.

master 브랜치는 배포했거나 배포할 코드로서 안정적인 버전을 유지한다.

develop 브랜치는 개발을 진행하고 있는 브랜치로 안정화가 진행되면 master 브랜치로 병합된다. 또한 기능 개발시 topic 브랜치를 만들어서 개발, 테스트 후 devlop 브랜치로 머지하고 devlop 브랜치에서 안정화 작업을 거친 후 master 브랜치로 머지하는 방법을 사용한다.

각 브랜치를 하나의 실험실로 생각한다.

Topic Branches

토픽 브랜치는 어떤 한 가지 주제나 작업을 위해 만든 짧은 호흡에 브랜치이다. git 에서는 브랜치를 만드는 것이 매우 쉬우므로 이렇게 브랜치를 생성 하고 개발하고 머지한다음 삭제한다.

보통 주제별로 브랜치를 만들고 각각은 독립돼 있기 때문에 매우 쉽게 컨텍스트 사이를 옮겨 다닐 수 있다. 묶음별로 나눠서 일하면 내용별로 검토하기에도, 테스트하기에도 더 편하다. 각 작업을 하루든 한 달이든 유지하다가 master 브랜치에 Merge 할 시점이 되면 순서에 관계없이 그때 Merge 하면 된다.