git 은 ?? 버전관리 시스템이다 .
그런데 버전관리 시스템이 많은데 왜 이것을 쓰는걸까 ??
협업이 좋아서 사용하고있고 ,
conflict 만 안생기면 전혀 문제가 없다 .
여태 까지 rebase 를 하거나 , merge 를 사용했는데
이것들 모두 feature/branch 를 만들어서 사용했다.
어떤 기업들은 master 에서 작업하는 곳도 있을것이다 .
어떤 기업들은 branch 까서 merge 하는곳도 rebase 하는곳도 있을것이다 .
이러나저러나 가장 기준이 되는것은 master 이다 .
그래서 git flow 는 뭐냐 ??
위와 같이 master branch 를 따로 둔다 .
개발용 branch 와 배포용 branch 이다 .
배포용은 배포용으로 관리를 하고 ,
다른 팀들은 develop 에 계속 merge 를 하면서 작업을 하게 된다 .
이것은 배포용 branch 이다 .
엇 ?? 근데 이상하다.
master 가 배포용 branch 인데 이 release branch 는 뭐지 ??
release branch 는 배포 테스트용 branch 이다 .
master 는 실제 배포된 코드가 들어가 있고 ,
release branch 는 배포할 코드가 들어가 있다.
release branch 에서 최종 검증을 끝나고 나서
mater 로 간다 .
긴급하게 고친다는 뜻이다 .
develop 부분과 feature branch 가 될것이다 .
그리고 배포하기전에 release branch 로 가게 될것이고 , 최종 검증이 끝나게 되면 master branch 로 가서 배포가 된다 .
출시버전에서 버그가 발생하게 된다면 hotfix branch 에서 버그를 수정하게 된다 .
참고자료
https://beomseok95.tistory.com/207
제 글이 잘 이해 안되시는 분은
https://uxgjs.tistory.com/183
위의 블로그가 잘 적혀있었습니다.