2014-03-19 1 views
0

분기 이름이 dev 인 경우 일반 개발 분기입니다.dev 브랜치는 매번 병합 된 후에 삭제되어야하나요?

매 병합 후에 삭제해야하며 새 병합을 만들어야합니까?

삭제하지 않는 경우, 지점 네트워크는 (모두 사용 --no-ff 병합) :

* 0019d6a - (HEAD, master) Merge branch 'dev' second (2 minutes ago) 
|\ 
| * e6dcaf5 - (dev) add b.file (2 minutes ago) 
* | c39915b - Merge branch 'dev' (3 minutes ago) 
|\ \ 
| |/ 
| * 352afa1 - add a.file (4 minutes ago) 
|/ 
* d06fb93 - init (4 minutes ago) 

버전 c39915b 첫 번째 병합하고, 다음 두 번째 병합을 수행 개발에 대한 이동합니다. 내가 삭제하고 새로 만들 경우

, 그것은 버전 c39915b에서 시작됩니다 : 두 번째 상황에서

* 4a4b8dc - (HEAD, master) Merge branch 'dev' second (7 seconds ago) 
|\ 
| * afd5dfe - (dev) add b.file (16 seconds ago) 
|/ 
* c39915b - Merge branch 'dev' (3 minutes ago) 
|\ 
| * 352afa1 - add a.file (4 minutes ago) 
|/ 
* d06fb93 - init (4 minutes ago) 

, 첫 번째보다 명확의 지점 네트워크를.

어떤 것이 더 좋을지 모르겠습니까?


추가합니다

나는 git-flow를 읽고이 사진을 찾습니다

git-flow

은 첫 번째를 사용하고 장기 지점으로 dev에 지점을 유지한다.

답변

1

이 시나리오에서 두 번째 방법은 시간이 지남에 따라 훨씬 더 많은 작업을 수행하므로 전혀 도움이되지 않습니다.

분기가 붙어 있고 병합을 유지하십시오. 또한, 가지를 사용하는 경우에도 두 번째 유형 기록을 얻을 수 있습니다. 마스터에 직접 변경을 가할 때마다 dev 브랜치를 최신 상태로 만들기 위해 dev (마스터의 dev가 아님, 다른 방법은 라운드)에 병합하십시오.

+0

예, 그렇게 생각합니다. 'dev' 브랜치를 장기적인 브랜치로 사용할 필요가 없습니다. 두 번째는'feature' 또는'fixbug' 브랜치와 같이 적합하고 dev에 합병됩니다. –

+0

참. 브랜치가 필요할 경우 삭제할 필요가 없습니다. 반면에 버그 수정은 일반적으로 수명이 짧은 분기이며 적절하게 작성되고 삭제됩니다. –

관련 문제