본문 바로가기
IT

Claude Code Git 연동 완전정리: 커밋, PR, 브랜치를 AI로 자동화하는 법

by 샤나엘 2026. 3. 10.
반응형

Claude Code Git 연동 완전정리: 커밋, PR, 브랜치를 AI로 자동화하는 법

코드를 짜는 것만큼 커밋 메시지 쓰기, PR 만들기, 머지 충돌 해결하기가 귀찮은 분들 많으시죠? Claude Code는 Git과 깊이 연동되어, 이 모든 작업을 대화 한 마디로 처리합니다. 이 글에서는 Claude Code의 Git 연동 기능을 완전 정리합니다.

Claude Code Git 연동 완전정리


1. Git 자동 감지와 기본 연동

Claude Code가 Git을 인식하는 방식

Claude Code는 프로젝트 디렉토리에 진입하면 자동으로 .git 폴더를 감지합니다. 별도 설정 없이 Git 저장소의 상태를 파악하고, 대화 중에 자연스럽게 Git 정보를 활용합니다.

# 이런 자연어 질문이 전부 가능합니다
"내가 수정한 파일 뭐 있어?"
"최근 커밋 5개 보여줘"
"지금 어떤 브랜치야?"
"main 브랜치와 뭐가 달라졌어?"

자동으로 활용하는 Git 정보

정보 활용 방식
현재 브랜치 작업 컨텍스트 파악
변경된 파일 코드 리뷰 및 커밋 대상 파악
최근 커밋 히스토리 커밋 메시지 스타일 학습
staged/unstaged 상태 커밋 범위 결정
.gitignore 무시할 파일 자동 제외

Claude Code는 .gitignore에 명시된 파일을 기본적으로 무시합니다. 민감한 파일이 실수로 포함되지 않도록 보호합니다.

Git 자동 감지와 기본 연동


2. /commit — AI가 만드는 커밋 메시지

커밋 자동화의 핵심

/commit은 Claude Code에서 가장 많이 쓰이는 슬래시 커맨드 중 하나입니다. 변경 내용을 분석해서 의미 있는 커밋 메시지를 자동 생성합니다.

# 사용법: 그냥 /commit 입력하면 끝
> /commit

동작 과정

단계 수행 내용
1단계 git status로 변경 파일 확인
2단계 git diff로 변경 내용 분석
3단계 최근 커밋 메시지 스타일 파악
4단계 변경 의미를 요약해 메시지 생성
5단계 사용자 확인 후 커밋 실행

실제 예시

# 변경 내용: auth.ts에 로그인 검증 함수 추가, test 파일 수정
> /commit

# Claude Code가 생성하는 커밋 메시지:
# "Add login validation function with email format check
#
#  - Add validateLoginInput() to auth.ts
#  - Add unit tests for email and password validation
#  - Handle edge cases for empty and malformed inputs"

커밋 메시지 스타일 제어

CLAUDE.md에 커밋 규칙을 명시하면 Claude Code가 따릅니다.

# CLAUDE.md
- 커밋 메시지는 한글로 작성
- Conventional Commits 형식 사용 (feat:, fix:, refactor: 등)
- 제목은 50자 이내, 본문에 변경 이유 포함

/commit — AI가 만드는 커밋 메시지


3. /pr — Pull Request 자동 생성

PR 만들기가 이렇게 쉬워집니다

/pr 커맨드 하나로 PR 제목, 설명, 변경 요약까지 자동 생성됩니다.

# feature 브랜치에서 작업 완료 후
> /pr

# Claude Code가 자동으로:
# 1. 모든 커밋 분석
# 2. PR 제목/설명 생성
# 3. gh pr create 실행

PR 생성 과정

단계 수행 내용
분석 git log main..HEAD로 모든 커밋 확인
비교 git diff main...HEAD로 전체 변경 파악
작성 PR 제목 + 요약 + 테스트 계획 자동 생성
생성 gh pr create 실행
연결 세션과 PR 연결 (나중에 이어서 작업 가능)

생성되는 PR 형식

## Summary
- 사용자 인증 모듈에 이메일 검증 기능 추가
- 비밀번호 강도 체크 함수 구현
- 관련 단위 테스트 15개 추가

## Test plan
- [ ] 이메일 형식 검증 테스트 확인
- [ ] 빈 입력값 엣지 케이스 확인
- [ ] 기존 로그인 플로우 회귀 테스트

🤖 Generated with Claude Code

전제 조건

# GitHub CLI가 설치 및 인증되어 있어야 합니다
gh auth login

# feature 브랜치에서 작업해야 합니다 (main 직접 X)
git checkout -b feature/my-feature

/pr — Pull Request 자동 생성


4. 브랜치 관리

대화로 하는 브랜치 작업

Git 명령어를 외울 필요 없이, 자연어로 브랜치를 관리할 수 있습니다.

# 브랜치 생성
"feature/login 브랜치 만들어줘"

# 브랜치 전환
"main 브랜치로 돌아가줘"

# 브랜치 목록
"브랜치 목록 보여줘"

# 브랜치 삭제 (확인 요청)
"feature/old 브랜치 삭제해줘"

주의: 파괴적 작업은 항상 확인

Claude Code는 파괴적인 Git 명령을 실행하기 전에 반드시 사용자에게 확인을 요청합니다.

명령어 위험도 Claude 동작
git branch -d 중간 확인 후 실행
git branch -D 높음 경고 + 확인
git checkout . 높음 대안 제시 + 확인
git reset --hard 매우 높음 강력 경고 + 확인

브랜치 관리


5. 머지 충돌 해결

AI가 충돌을 분석하고 해결합니다

머지 충돌은 개발자가 가장 싫어하는 작업 중 하나입니다. Claude Code는 충돌 마커를 분석하고 양쪽 의도를 파악해 최적의 해결안을 제시합니다.

# rebase나 merge 중 충돌 발생 시
"충돌 해결해줘"
"src/auth/login.ts 충돌 해결해줘"

충돌 해결 과정

단계 수행 내용
감지 <<<<<<<, =======, >>>>>>> 마커 인식
분석 양쪽 브랜치의 변경 의도 파악
컨텍스트 주변 코드와 커밋 히스토리 참고
해결 양쪽의 장점을 살린 통합 코드 제안
확인 해결안을 사용자에게 보여주고 승인 요청

실제 예시

<<<<<<< HEAD (현재 브랜치)
function getUser(id: string) {
  return db.users.findById(id);
}
=======
async function getUser(id: string): Promise<User> {
  return await db.users.findOne({ id });
}
>>>>>>> feature/async-db
> "이 충돌 해결해줘"

# Claude Code의 해결:
# async와 타입을 살리면서 findById 메서드명 유지
async function getUser(id: string): Promise<User> {
  return await db.users.findById(id);
}

머지 충돌 해결


6. Git 안전 장치

Claude Code가 절대 하지 않는 것들

Claude Code에는 강력한 Git 안전 프로토콜이 내장되어 있습니다. 실수로 코드를 날리는 일이 없도록 보호합니다.

규칙 설명
Force Push 금지 --force 옵션은 사용자가 명시적으로 요청해야만 실행
Hook 건너뛰기 금지 --no-verify 자동 사용하지 않음
main 보호 main/master에 force push 시도 시 경고
새 커밋 우선 amend 대신 새 커밋 생성이 기본값
선택적 스테이징 git add . 대신 파일 지정 추가
민감파일 감지 .env, credentials 등 커밋 시 경고

안전한 Git 워크플로우

# Claude Code의 기본 동작:
# 1. git add specific-files.ts  (선택적 스테이징)
# 2. git commit -m "메시지"      (새 커밋 생성)
# 3. git push origin branch     (일반 push만)

# 이런 건 절대 자동으로 안 함:
# ✗ git push --force
# ✗ git reset --hard
# ✗ git clean -f
# ✗ git commit --no-verify

실수 방지 사례

# 사용자: ".env 파일도 커밋해줘"
# Claude Code: "⚠️ .env 파일에 민감한 정보(API 키, 비밀번호)가
# 포함되어 있을 수 있습니다. 정말 커밋하시겠습니까?"

Git 안전 장치


7. Git Worktree — 병렬 작업

하나의 저장소에서 여러 작업을 동시에

Git Worktree를 사용하면 하나의 저장소에서 여러 브랜치를 동시에 열어 작업할 수 있습니다. Claude Code는 이를 완벽히 지원합니다.

# 터미널에서 worktree 모드로 시작
claude --worktree feature-auth

# 또는 Claude Code 안에서
"worktree로 feature/auth 작업 시작해줘"

Worktree 동작 방식

항목 설명
생성 위치 .claude/worktrees/<이름>/
브랜치 worktree-<이름> 자동 생성
격리 메인 작업 디렉토리와 완전 분리
정리 변경 없으면 자동 삭제, 있으면 확인 후 결정

활용 시나리오

# 시나리오: 기능 A 작업 중에 긴급 버그 수정이 필요한 경우

# 터미널 1: 기능 A 작업 중
claude --worktree feature-a
# → .claude/worktrees/feature-a/ 에서 작업

# 터미널 2: 긴급 버그 수정
claude --worktree hotfix-bug
# → .claude/worktrees/hotfix-bug/ 에서 작업

# 두 작업이 서로 영향을 주지 않음!

서브에이전트와 Worktree

Claude Code의 서브에이전트도 worktree를 활용할 수 있습니다. 에이전트가 별도의 격리된 환경에서 작업하므로 메인 코드에 영향 없이 실험할 수 있습니다.

Git Worktree


8. GitHub CLI 연동

gh 명령어와의 통합

Claude Code는 GitHub CLI(gh)를 활용하여 GitHub와 직접 소통합니다.

# 필수 설치 및 인증
gh auth login

주요 연동 기능

기능 명령/방법 설명
PR 생성 /pr 또는 "PR 만들어줘" gh pr create 실행
PR 조회 "이 PR 내용 보여줘" gh pr view 실행
이슈 확인 "이슈 #42 내용 보여줘" gh issue view 실행
PR 코멘트 "PR에 리뷰 코멘트 달아줘" gh api 실행
PR 이어받기 claude --from-pr 123 이전 세션 복구

PR과 세션 연결

# PR을 만들면 세션이 자동으로 연결됩니다
> /pr
# → PR #45 생성됨, 세션 연결

# 나중에 이어서 작업하려면:
claude --from-pr 45
# → PR의 컨텍스트를 그대로 이어받아 작업 재개

GitHub Actions 연동

# .github/workflows/claude.yml
name: Claude Code Review
on:
  pull_request:
    types: [opened, synchronize]

jobs:
  review:
    runs-on: ubuntu-latest
    steps:
      - uses: anthropics/claude-code-action@v1
        with:
          anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}

GitHub Actions를 통해 PR이 열리면 자동으로 코드 리뷰를 수행하는 워크플로우를 구성할 수 있습니다.

GitHub CLI 연동


9. 실전 Git 워크플로우

일상적인 개발 흐름

아침에 출근해서 퇴근할 때까지, Claude Code와 함께하는 Git 워크플로우입니다.

# 1. 아침: 최신 코드 동기화
"main 최신 코드 pull 받아줘"

# 2. 브랜치 생성
"feature/user-profile 브랜치 만들어줘"

# 3. 코딩 작업 (Claude Code와 함께)
"UserProfile 컴포넌트 만들어줘"
"API 연동 추가해줘"
"테스트 작성해줘"

# 4. 중간중간 커밋
> /commit

# 5. 작업 완료 후 PR
> /pr

# 6. 리뷰 피드백 반영
"PR 리뷰 코멘트 보여줘"
"피드백 반영해서 수정해줘"
> /commit

팀 프로젝트에서의 활용

상황 Claude Code 활용법
코드 리뷰 요청 /pr로 자동 PR 생성 + 설명
리뷰 피드백 반영 "리뷰 코멘트 반영해줘"
머지 충돌 "충돌 해결해줘"
릴리스 "CHANGELOG 업데이트해줘"
핫픽스 worktree로 긴급 브랜치 작업

CLAUDE.md에 Git 규칙 설정

# CLAUDE.md - Git 관련 설정 예시

## 커밋 규칙
- Conventional Commits 형식 (feat:, fix:, docs: 등)
- 커밋 메시지는 한글로 작성
- 제목은 50자 이내

## 브랜치 규칙
- feature/, fix/, hotfix/ 접두사 사용
- main 직접 커밋 금지

## PR 규칙
- PR 설명에 관련 이슈 번호 포함
- 테스트 계획 필수 포함

 

실전 Git 워크플로우


10. 자주 묻는 질문 (FAQ)

Git 관련 FAQ

Q: Git이 설치 안 되어 있으면 어떻게 되나요?
A: Claude Code의 Git 관련 기능은 사용할 수 없지만, 파일 편집 등 다른 기능은 정상 작동합니다.

Q: GitHub 말고 GitLab이나 Bitbucket도 되나요?
A: Git 자체의 기능(commit, branch, merge)은 모두 됩니다. 다만 /pr은 GitHub CLI(gh)에 의존하므로 GitHub 전용입니다. GitLab/Bitbucket에서는 직접 git push 후 웹에서 MR/PR을 만들 수 있습니다.

Q: 커밋 메시지를 영어로 쓰고 싶은데요?
A: CLAUDE.md에 "Write commit messages in English" 규칙을 추가하면 됩니다. Claude Code는 프로젝트의 기존 커밋 스타일도 참고합니다.

Q: force push가 정말 필요한 경우는요?
A: "main에 force push해줘"처럼 명시적으로 요청하면 실행합니다. 다만 main/master 브랜치인 경우 추가 경고가 표시됩니다.

Q: 대용량 파일이 있으면 어떻게 하나요?
A: Claude Code는 .gitignore를 기본 존중합니다. 대용량 파일이 있다면 .gitignore에 추가하거나, Git LFS 사용을 안내받을 수 있습니다.

Q: 커밋 후 실수를 발견하면 어떻게 하나요?
A: "방금 커밋 취소해줘"라고 하면 Claude Code가 git reset --soft HEAD~1 같은 안전한 방법을 제안합니다. 이미 push한 경우에는 새 커밋으로 수정을 권장합니다.


Claude Code 시리즈 네비게이션

제목 상태
1편 Claude Code란? AI 코딩의 새 시대
2편 설치와 초기 설정
3편 기본 사용법 마스터
4편 슬래시 커맨드 완전정리
5편 CLAUDE.md 작성법
6편 메모리 시스템 심화
7편 권한 시스템 완전정리
8편 모델 선택과 컨텍스트
9편 요금제 완전 가이드
10편 Git 연동 완전정리 📖
11편 Hook 시스템 🔜
12편 MCP 서버 연동 🔜
13편 헤드리스 모드와 CI/CD 🔜

면책 조항: 이 글은 정보 제공 목적으로 작성되었습니다. Claude Code의 기능과 요금은 Anthropic의 정책에 따라 변경될 수 있으며, 최신 정보는 공식 문서를 확인해 주세요.

반응형

댓글