지라 브랜치 기반으로 Cursor에서 Git 관리하기

Noah-wilson·2025년 4월 29일

협업

목록 보기
3/4

CURSOR IDE에서 GIT사용의 불편함

Cursor IDE는 VS Code 기반이긴 하지만, 기본 제공되는 Git GUI 기능에서는 커밋 템플릿을 불러오지 못하기 때문에 불편했다. 특히 커밋 메시지를 일정한 형식으로 작성하려는 경우에는 따로 지원되는 내장 기능이나 플러그인이 없어서 CLI를 함께 사용하는 게 훨씬 낫다는 결론에 도달했다.

그래서 다음과 같은 흐름으로 Git 브랜치 전략을 구성하고 사용하기로 했다:

  1. Jira 이슈 페이지에서 브랜치를 생성하면 원격 브랜치가 자동으로 만들어진다.

  2. 로컬에서는 동일한 이름의 브랜치를 수동으로 생성한다.

  3. 해당 로컬 브랜치를 원격 브랜치와 트래킹(tracking) 연결한 후 작업한다.

    master branch (원격, 최종 통합 브랜치)
    └─ feature/화면, 메인, 유저 등 (원격, 기능 단위 브랜치)
      └─ local branch (로컬, 개발자 단위 브랜치)
    

    결론적으로, Jira에서 기능 단위 원격 브랜치를 만들고, 로컬 브랜치에서 작업한 후 master로 병합하는 구조로 통일해나갈 계획이다.

REMOTE BRANCH와 LOCAL BRANCH이란?

기존에는 IntelliJ 기반으로 Git을 사용했기 때문에, 새 브랜치를 만들면 자동으로 로컬 브랜치와 원격 브랜치가 같은 이름으로 연동되어 생성되는 경우가 많았다. 그래서 로컬과 원격 브랜치의 차이나 트래킹 개념을 정확히 인식하지 못한 채 작업해왔던 것이다.

그러나 Cursor IDE에서는 Git CLI 사용을 하게 되면서 로컬 브랜치 / 원격 브랜치 / 트래킹 브랜치의 개념을 명확하게 이해해야만 브랜치 관리가 가능했다.

구분설명
Remote Branch원격 저장소(GitHub 등)에 존재하는 브랜치. 예: origin/master, origin/feature/INOUT-41-debate-room
Local Branch내 PC에서만 존재하는 브랜치. 직접 작업하는 브랜치이며, 원격 브랜치와 연결(tracking)할 수 있음
Tracking Branch로컬 브랜치가 원격 브랜치와 연결되어 있을 때, git push, git pull을 생략된 이름으로 자동 적용됨

로컬 브랜치가 원격 브랜치와 트래킹된 상태라면, git push만으로도 자동으로 연결된 브랜치로 푸시할 수 있다.

CLI에서 GIT 사용 해보기

1. 깃허브와 리액트 프로젝트 연동

지라에서 원격 브랜치 생성 후

git checkout - b "로컬브랜치" "원격 브랜치" 원격 브랜치와 로컬 브랜치 트래킹 설정을 하였다.

2.git commit message template적용

git config --global commit.template "커밋 메시지 템플릿 주소"를 통해 커밋 메시지 템플릿을 적용했다.

CLI에서 최신정보 반영하는방법

현재 이 상황은 다음과 같았다.

origin/master       ← 최신 코드 있음
   ↑
   │   (반영하고 싶은 내용)
   ↓
INOUT-41-debate-stage  ← 작업 중인 로컬 브랜치 

git checkout INOUT-41-debate-stage을 하여 내가 업데이트할 로컬 브랜치로 이동한다.

git fetch origin을 하여 원격 브랜치 최신 정보 가져온 후,
git merge origin/master를 통해 origin/master의 최신 내용을 병합한다.

성공했다면 아래 사진과 같은 흐름을 보이며 정상적으로 master 브랜치의 코드가 성공적으로 병합된다.

0개의 댓글