Git (Git-Flow)

Jisu_M·2024년 11월 12일

Git 이란?

Git이란 코드 형상 관리 시스템으로 VCS(Version Control System)이라고 칭한다.

Git이 다루는 영역은?


출처: https://choonsik-lab.tistory.com/entry/Git-기초-1편?pidx=0

이렇게 크게는 Local/Remote로 나눠진다.

  1. working directory란 내가 현재 작업하고 있는 공간이며
  2. 수정 내역을 add 한 경우 staging area로 올라가게 된다. staging area는 git에서 관리하고자 하는 파일임을 명시하는 의미이다.
  3. staging area에 있는 수정 내역들을 commit하여 local repository에 올리고
  4. 이를 push하여 원격(remote) 저장소에 반영하게 된다.

나는 기본적인 Git 사용법은 알고 있어서 feature Branch를 이용하여 관리하는 법을 정리하고자 한다.

우선 다음과 같은 브랜치로 Git-Flow가 운영된다.

  • master(main) : 현재 서비스 되고 있는 버전과 동일한 브랜치로 최종 릴리즈 버전과 같다.
  • hotfix : 배포된 버전(master)에 긴급한 수정이 있을 때 사용하는 브랜치로, 초기에는 생성하지 않고 버그가 생긴 경우 생성해도 되는 브랜치이다. master 브랜치로부터 브랜치를 생성해야 한다.
  • release : 배포에 사용되는 브랜치이며 수정에 따라 버전을 관리한다.
  • develop : 머지 브랜치라고도 부르며, feature 브랜치들의 내용을 머지하는 브랜치이다.
  • feature : develop 브랜치에서 분기되며, 새로운 기능을 개발하기 위한 브랜치이다.

이 Flow를 알기 전 master - dev 로만 개발을 진행하였고, 이후 해당 내용을 반영하여 master - dev - feature Flow로 프로젝트를 재구성하였다.

feature 브랜치명 예시

feature 브랜치는 기능을 개발하기 위한 브랜치로 feature/티켓번호_기능 형태로 생성하게 된다.

여기서 티켓이란 요구사항 명세서나 기능 구현에 번호를 매겨 티켓으로 사용하여 개발자를 쉽게 찾기 위해 사용한다.

예를 들어 1. 로그인 기능 / 2. 비밀번호 변경 기능이 있는 경우

feature/1_login

이렇게 브랜치명을 생성하면 된다.

profile
개발 여정을 기록하며 성장하는 매일

0개의 댓글