스파르타 부트캠프(spring)

[내일배움캠프_Spring] 자바 Spring 입문_Git 브랜치 활용_230118

wkdwldP 2023. 1. 18. 23:37

팀 프로젝트를 진행하면서 필수인 깃허브를 사용하는데 그 중 깃 브렌치 활용이 헷갈려 적어봄.


<<Git 브렌치란?>>

개발을 하다 보면 코드를 여러 개로 복사해야 하는 일이 자주 생긴다. 코드를 통째로 복사하고 나서 원래 코드와는 상관없이 독립적으로 개발을 진행할 수 있는데, 이렇게 독립적으로 개발하는 것이 브랜치다.

 

브랜치

Git은 데이터를 Change Set이나 변경사항(Diff)으로 기록하지 않고 일련의 스냅샷으로 기록한다.

 

각 브렌치의 사용법(3가지만..)

Master Branch

제품으로 출시될 수 있는 브랜치

  • 배포(release) 이력 관리를 위해 사용한다. 바로 배포가 가능한 상태만을 관리.

Develop Branch

다음 출시 버전을 개발하는 브랜치

  • 기능 개발을 위한 브랜치들을 병합하기 위해 사용
    ->모든 기능들이 추가되고 버그가 수정되어 안정적인 상태라면 master 브랜치에 병합(merge)한다.
  • 주로 이 브랜치를 기반으로 개발 진행

Feature Branch

기능을 개발하는 브랜치

  • 새로운 기능 개발 및 버그 수정이 필요할 때마다 develop브랜치로부터 분기됨
    ->feature 브랜치 작업은 기본적으로 공유 필요가 없어서 자신의 로컬저장소에서 관리한다.
  • 개발 완료 후 develop브랜치로 병합(merge) -> 다른 사람과 공유

    1.‘develop’ 브랜치에서 새로운 기능에 대한 feature 브랜치를 분기한다.
    2.새로운 기능에 대한 작업 수행한다.
    3.작업이 끝나면 ‘develop’ 브랜치로 병합(merge)한다.
    4.더 이상 필요하지 않은 feature 브랜치는 삭제한다.
    5.새로운 기능에 대한 ‘feature’ 브랜치를 중앙 원격 저장소에 올린다.(push)

  • feature 브랜치 이름 정하기
master, develop, release-(RB_), or hotfix- 제외
[feature/기능요약] 형식을 추천 EX) feature/login


 

브렌치 체크아웃으로 다른 브랜치로 이동할 수 있다. 

 

병합 충돌시 인텔리제이에서 커밋 머지로 ...