GitFlow vs Trunk-based 협업방식

서정헌·2023년 11월 6일

movie

협업 방식을 채택하는 이유

프로젝트가 커지고 사람이 많아지면 branch, merge가 복잡해지기 때문에 GitFlow/ Github Flow/ Trunk-based 등을 사용하게 된다.

GitFlow


5개의 브랜치를 운영

  • develop에 복제본을 만들어 개발을 진행
  • feature에 신기능을 테스트를하며 개발후 develop에 합쳐준다
  • develop에서 main에 합치기 전에 임시 release브랜치에 테스트를 진행후 오류가 생기지 않으면 메인에 최종적으로 합쳐준다.
  • 메인에서 배포를 했는데 버그가 생겨 문제가 생기면 급하게 hotfix를 만들어 문제를 해결뒤 바로 메인에 합쳐준다.
    장점: 안정적으로 버전별 배포가 가능하다
    단점: CI/CD를 사용하는 곳은 좋아하지 않는다.

Trunk-based, GithubFlow (둘이 비슷하다)

main 브랜치 하나만 운영하여 개발을 진행
기능이나 개발은 feature 브랜치를 만들어 개발 후 바로 메인에 합친다.
장점: 소스코드를 여러개 관리할 필요가 없다.
단점: 테스트를 자주 해주어야한다.

0개의 댓글