2018년 2월 8일 목요일

git branch 관련

브랜치란?
독립적인 여러 작업을 진행하기 위한 개념

여러 명이서 동시에 작업을 할 때에 다른 사람의 작업에 영향을 주거나 받지 않도록, 먼저 메인 브랜치에서 자신의 작업 전용 브랜치를 만듭니다. 그리고 각자 작업을 진행한 후, 작업이 끝난 사람은 메인 브랜치에 자신의 브랜치의 변경 사항을 적용합니다. 이렇게 함으로써 다른 사람의 작업에 영향을 받지 않고 독립적으로 특정 작업을 수행하고 그 결과를 하나로 모아 나가게 됩니다. 이러한 방식으로 작업할 경우 '작업 단위', 즉 브랜치로 그 작업의 기록을 중간 중간에 남기게 되므로 문제가 발생했을 경우 원인이 되는 작업을 찾아내거나 그에 따른 대책을 세우기 쉬워집니다.


>>결국 개발자들이 서로에 작업에 영향을 주지 않으면 독립된 공간에서 다양한 작업을 진행할 수 있게 도와주는 것 같음


master - 최종 배포용
develop - 개발용
feature - develop에서 새로운 기능을 만들때 쓰는 브랜치?

*************************************
출처
https://backlog.com/git-tutorial/kr/stepup/stepup1_1.html


브랜치 설명
https://mylko72.gitbooks.io/git/content/branch/branch_type.html




**********************************************
쓰는 흐름은
develop에서  feature를 따서 작은 기능을 개발 -> 작은 기능이 개발완료되면 develop으로 merge -> 반복 -> 모든 기능들이 완료되어 develop으로 합쳐지고, 정상적으로 동작하면 master에 올려서 최종배포

인듯 하다.