git-flow

아직 완성되지 않은 포스트 입니다.

git-flow 는 git-flow는 Vincent Driessen의 브랜칭 모델을 위한 고수준 저장소 작업을 제공하는 git의 확장이라고 한다.

merge 기반의 솔루션이며, rebase 하지 않는다.

merge 와 rebase 의 차이는

merge 는 branch 1, branch 2 의 커밋들을 합치는데, 각자의 커밋들을 ‘그대로' 유지한 체 새로운 공통의 커밋을 만드는 것이다.

https://git-scm.com/book/ko/v2/Git-%EB%B8%8C%EB%9E%9C%EC%B9%98-%EB%B8%8C%EB%9E%9C%EC%B9%98%EC%99%80-Merge-%EC%9D%98-%EA%B8%B0%EC%B4%88

rebase 는 commit 들을 재조합하여 기존 commit을 제거하고 새로운 공통의 commit을 만든다.

https://git-scm.com/book/ko/v2/Git-%EB%B8%8C%EB%9E%9C%EC%B9%98-Rebase-%ED%95%98%EA%B8%B0

c4 가 c3 과 결합하여 c3 을 부모로 하는 c4' 가 생성된다.

fast-forward merge 가 된다.

1.master branch

product branch

product 로 build 될 branch 이다

2.develop branch

develop branch

개발 버전으로 build 될 branch 이다. 실제 상용버전 product 이전에 개발 버전으로 build 할수 있는 branch 이다.

3.feature branch

issue handling branch

develop branch 에서 새로이 issue 를 handling 할 branch 이다.

즉 새로운 기능을 추가할때, 버그를 고칠때 등 새로운 issue 를 다룰때 생성하는 branch 이다.

git-flow 를 이용하면, feature/<name> 형식으로 branch 를 생성하며

issue 를 handling 한 이후에 feature branch 를 develop에 merge 한 후..

merge into develop

한후 제거하던지, 계속 이 feature branch 로 새로운 issue 를 handling 할 수 있다.

다른 동료 프로그래머들이 자신들의 feature를 develop 에 merge 시킬수도 있으니, develop 를 자신의 feature branch 에 주기적으로 merge 하고 가는것이 좋다.

4.command

One clap, two clap, three clap, forty?

By clapping more or less, you can signal to us which stories really stand out.