새소식

300x250
AI/Claude

Claude Code v2.1.49 신기능 리뷰 : --worktree로 멀티 에이전트 안전하게 쓰기, 병렬 작업 환경 구축 하기

  • -
728x90

안녕하세요! 갓대희 입니다.

오늘은 Git Worktree 지원 기능에 대해 알아보려고 한다.


Claude Code로 여러 작업을 동시에 진행하다 보면 한 세션의 변경사항이 다른 세션과 충돌하거나, 실험적인 코드가 메인 브랜치를 오염시키는 경험을 해봤을 것이다. --worktree 플래그는 이런 문제를 근본적으로 해결해주는 기능이다. 

목차

  1. Git Worktree란 무엇인가
    • 기존 방식의 문제점
    • Worktree가 해결해주는 것
  2. --worktree 플래그 기본 사용법
    • 워크트리 생성 위치 및 브랜치 네이밍
    • 자동 이름 생성
  3. 워크트리 정리(Cleanup) 동작
  4. 서브에이전트 Worktree 격리
    • agent frontmatter isolation 설정
    • WorktreeCreate / WorktreeRemove 훅
  5. --dangerously-skip-permissions와 조합
    • 플래그 동작 방식과 위험성
    • Worktree와 조합하는 이유
    • 완전 자동화 패턴
    • 병렬 에이전트 Bash 스크립트
  6. 모델별 조합 및 환경변수 설정
  7. .gitignore 설정
  8. 실전 활용 시나리오
  9. 보안 고려사항
  10. 트러블슈팅 및 FAQ
  11. 실제 검증 결과 (직접 실행)
  12. 참고 자료
Claude Code Worktree 완전 가이드
Git Worktree는 하나의 저장소에서 여러 작업 디렉토리를 독립적으로 운용하는 Git 기능이다. Claude Code의 --worktree 플래그(v2.1.49+)를 사용하면 에이전트 세션마다 격리된 브랜치가 자동 생성되어, 병렬 작업 시 코드 충돌이 발생하지 않는다. --dangerously-skip-permissions와 조합하면 완전 자동화 파이프라인 구축도 가능하다.

 

1. Git Worktree란 무엇인가

기존 방식의 문제점

Claude Code로 여러 작업을 병렬로 진행하려고 하면 이런 상황이 발생한다:

  • 터미널 A에서 기능 개발 중, 터미널 B에서 버그 수정 → 같은 파일을 동시에 수정하다 충돌 발생
  • 실험적인 리팩토링을 진행하다가 메인 브랜치가 불안정한 상태가 됨
  • 서로 다른 작업을 위해 git stash를 반복하다 작업 내용을 잃어버림
  • 병렬 에이전트를 실행하면 서로의 변경사항이 뒤섞임

 

Worktree가 해결해주는 것

Git Worktree는 하나의 저장소에서 여러 개의 독립된 작업 디렉토리를 운용하는 기능이다. 각 워크트리는 자신만의 파일과 브랜치를 가지면서, 저장소의 히스토리와 리모트 연결은 공유한다.

┌─────────────────────────────────────────────┐
│              Git Repository                 │
│         (히스토리, 리모트 공유)               │
└──────────────┬──────────────────────────────┘
               │
     ┌─────────┴─────────┐
     │                   │
┌────▼────────┐   ┌──────▼──────────┐
│  main 브랜치 │   │ worktree 브랜치  │
│  /project   │   │ /worktrees/auth │
│             │   │                 │
│  개발자 작업 │   │  Claude 에이전트 │
└─────────────┘   └─────────────────┘
        
구분 기존 방식 (단일 체크아웃) Worktree 방식
병렬 작업 파일 충돌 위험 완전 독립 실행
브랜치 전환 git stash 필요 동시에 여러 브랜치 유지
실험적 작업 메인 브랜치에 영향 격리된 브랜치에서 시도
에이전트 실행 서로 뒤섞임 각자 독립된 환경
정리 수동 정리 변경 없으면 자동 삭제

 

2. --worktree 플래그 기본 사용법

--worktree 플래그(단축형 -w)는 Claude Code v2.1.49에서 추가된 기능이다. (출처: 공식 CHANGELOG)

// 이름을 지정하여 워크트리 시작
claude --worktree feature-auth
claude -w feature-auth

// 이름 없이 시작 (자동 이름 생성)
claude --worktree
claude -w

// 두 개의 독립된 세션 병렬 실행
claude --worktree feature-auth   # 터미널 1: 새 기능 개발
claude --worktree bugfix-123     # 터미널 2: 버그 수정

 

워크트리 생성 위치 및 브랜치 네이밍

공식 문서에 따르면 워크트리는 다음 경로에 생성된다:

워크트리 생성 규칙
  • 디렉토리: <repo>/.claude/worktrees/<name>/
  • 브랜치명: worktree-<name>
  • 분기 기준: 기본 리모트 브랜치에서 분기

예) claude -w feature-auth 실행 시:
→ 디렉토리: .claude/worktrees/feature-auth/
→ 브랜치: worktree-feature-auth (❓ 브랜치 네이밍 패턴은 공식 문서에 명시되지 않음 — 실제 동작은 버전에 따라 다를 수 있음)

 

자동 이름 생성

이름을 생략하면 Claude가 랜덤 이름을 자동 생성한다 (예: bright-running-fox).

// 자동 생성 이름 예시
claude -w
# → .claude/worktrees/bright-running-fox/
# → 브랜치: worktree-bright-running-fox
세션 중에도 워크트리 생성 가능

CLI 플래그 없이도 세션 진행 중에 Claude에게 직접 요청할 수 있다:
"워크트리에서 작업해줘" 또는 "새 worktree를 시작해줘"라고 하면 Claude가 자동으로 워크트리를 생성하고 해당 환경에서 작업한다.

 

3. 워크트리 정리(Cleanup) 동작

워크트리 세션을 종료하면 Claude가 변경사항 유무에 따라 자동으로 정리를 처리한다. (출처: 공식 Common Workflows 문서)

세션 종료 시 상태 동작
변경사항 없음 워크트리 디렉토리 및 브랜치 자동 삭제
변경사항 또는 커밋 존재 사용자에게 유지/삭제 여부 프롬프트 표시
세션 종료
    │
    ├─ 변경사항 없음? ─→ 워크트리 + 브랜치 자동 삭제
    │
    └─ 변경사항 있음? ─→ 프롬프트 표시
                              │
                    ┌─────────┴─────────┐
                    │                   │
                  유지 선택           삭제 선택
                    │                   │
            디렉토리 + 브랜치       디렉토리 + 브랜치
              보존 (나중에 복귀)      삭제 (커밋 포함)
수동 정리 방법

Claude 세션 외부에서 직접 워크트리를 관리하려면 Git 명령을 사용한다:

// 워크트리 목록 확인
git worktree list

// 특정 워크트리 수동 삭제
git worktree remove .claude/worktrees/feature-auth

// 이미 삭제된 디렉토리의 워크트리 레코드 정리
git worktree prune

 

4. 서브에이전트 Worktree 격리

CLI 플래그 외에도, 서브에이전트 정의 파일isolation: worktree를 선언하여 해당 에이전트가 항상 격리된 워크트리에서 실행되도록 설정할 수 있다. (v2.1.49+) (출처: 공식 Sub-agents 문서)

 

agent frontmatter isolation 설정

// .claude/agents/isolated-refactor.md
---
name: isolated-refactor
description: 격리된 워크트리에서 안전하게 리팩토링 작업을 수행하는 에이전트.
             대규모 코드 변경이나 실험적 리팩토링 요청 시 자동으로 사용됨.
tools: Read, Edit, Bash, Grep, Glob
model: sonnet
isolation: worktree
---

격리된 git 워크트리에서 코드 리팩토링을 수행합니다.
메인 브랜치에 영향을 주지 않고 변경사항을 시도한 후,
검토 후 선택적으로 병합할 수 있습니다.
Frontmatter 필드 효과
isolation worktree 에이전트 실행 시 임시 git 워크트리 자동 생성, 변경 없으면 자동 정리
permissionMode bypassPermissions 에이전트 수준에서 권한 확인 건너뜀 (isolation과 조합 가능)
maxTurns 숫자 (예: 50) 에이전트 최대 실행 턴 수 제한

 

WorktreeCreate / WorktreeRemove 훅

v2.1.50 CHANGELOG에 WorktreeCreateWorktreeRemove 훅 이벤트가 추가된 것으로 기록되어 있다. 워크트리 격리 환경이 생성/삭제될 때 커스텀 명령을 자동 실행할 수 있다.

문서화 상태: 이 두 훅 이벤트는 현재 공식 Hooks 레퍼런스 문서의 이벤트 목록에는 아직 등재되지 않았다. CHANGELOG 기준으로는 v2.1.50에서 추가되었으나, 공식 문서 업데이트 전이므로 참고 시 주의가 필요하다.
훅 이벤트 트리거 시점 활용 예시
WorktreeCreate isolation 에이전트가 워크트리를 생성할 때 의존성 설치, 환경 초기화, 로그 기록
WorktreeRemove isolation 에이전트가 워크트리를 제거할 때 임시 파일 정리, 알림 발송, 로그 기록
// .claude/settings.json - 워크트리 훅 설정 예시
{
  "hooks": {
    "WorktreeCreate": [
      {
        "hooks": [
          {
            "type": "command",
            "command": "npm install && echo '워크트리 환경 초기화 완료' >> ~/.claude/worktree.log"
          }
        ]
      }
    ],
    "WorktreeRemove": [
      {
        "hooks": [
          {
            "type": "command",
            "command": "echo '워크트리 제거됨: $(date)' >> ~/.claude/worktree.log"
          }
        ]
      }
    ]
  }
}

 

5. --dangerously-skip-permissions와 조합

공식 Permissions 문서의 경고:

  • bypassPermissions 모드는 모든 권한 체크를 비활성화한다
  • Docker 컨테이너나 VM 같은 격리된 환경에서만 사용해야 한다
  • 일반 개발 로컬 환경에서는 사용을 강력히 비권장
  • 관리자는 managed settings로 이 모드를 완전히 차단할 수 있다

Worktree와 조합하는 이유

--worktree와 함께 사용하면 리스크가 현저히 줄어든다. 그 이유는:

워크트리가 리스크를 줄이는 방식
  • 브랜치 격리: Claude의 모든 변경이 별도 브랜치(worktree-*)에만 적용됨 → 메인 브랜치는 안전
  • 결과 검토 후 병합: 작업 완료 후 결과를 검토하고 선택적으로 merge
  • 자동 정리: 문제가 있으면 워크트리를 삭제하면 그만
  • 병렬 독립성: 여러 에이전트가 서로의 작업을 방해하지 않음

 단, 워크트리 격리는 완전한 샌드박스가 아니다. Bash 명령은 여전히 시스템 전체에 영향을 줄 수 있으므로, 완전한 격리를 위해서는 Docker/VM을 사용해야 한다.

완전 자동화 패턴

-p (--print 모드, 비대화형 출력 모드)와 함께 조합하면 완전 비대화형 자동화가 가능하다.

// ex1: 워크트리 격리 + 완전 자동화 헤드리스 실행
claude -w feature-payment \
  --dangerously-skip-permissions \
  -p "결제 모듈을 리팩토링하고 테스트를 통과시켜라" \
  --output-format json

// ex2: 스트리밍 JSON으로 실시간 진행 상황 확인
claude -w debug-session \
  --dangerously-skip-permissions \
  -p "에러 로그를 분석하고 원인을 수정하라" \
  --output-format stream-json \
  --verbose

 

병렬 에이전트 Bash 스크립트

여러 워크트리를 동시에 실행하는 병렬 파이프라인 예시.

// parallel-agents.sh - 병렬 워크트리 실행 스크립트
#!/bin/bash

# 각 작업 정의 (이름 → 프롬프트)
declare -A tasks
tasks["auth"]="인증 모듈 리팩토링: JWT 토큰 처리 개선 및 보안 강화"
tasks["db"]="데이터베이스 레이어 최적화: N+1 쿼리 해결 및 인덱스 추가"
tasks["api"]="API 엔드포인트 타입 안전성 강화: TypeScript 타입 추가"

mkdir -p output

# 모든 작업을 병렬로 실행
for name in "${!tasks[@]}"; do
  claude -w "refactor-${name}" \
    --dangerously-skip-permissions \
    -p "${tasks[$name]}" \
    --model claude-sonnet-4-6 \
    --max-turns 30 \
    --output-format json \
    > "output/${name}.json" 2>&1 &
  echo "시작: refactor-${name} (PID: $!)"
done

# 모든 병렬 작업 완료 대기
wait
echo "✅ 모든 병렬 작업 완료"

# 결과 요약
for name in "${!tasks[@]}"; do
  echo "=== ${name} 작업 결과 ==="
  jq -r '.result // "오류 발생"' "output/${name}.json" 2>/dev/null
done
병렬 실행 흐름:

터미널 (메인 프로세스)
    │
    ├─→ claude -w refactor-auth ...  &  (PID 1234)
    │       └─ .claude/worktrees/refactor-auth/
    │           └─ worktree-refactor-auth 브랜치
    │
    ├─→ claude -w refactor-db ...    &  (PID 1235)
    │       └─ .claude/worktrees/refactor-db/
    │           └─ worktree-refactor-db 브랜치
    │
    ├─→ claude -w refactor-api ...   &  (PID 1236)
    │       └─ .claude/worktrees/refactor-api/
    │           └─ worktree-refactor-api 브랜치
    │
    └─ wait → 모든 작업 완료 후 결과 수집
        

 

6. 모델별 조합 및 환경변수 설정

모델별 조합

작업 복잡도에 따라 적절한 모델을 선택하면 비용과 성능의 균형을 맞출 수 있다.

// Haiku: 빠른 단순 작업 (타입 오류 수정, 포맷팅)
claude -w quick-fix \
  --dangerously-skip-permissions \
  -p "타입 오류를 모두 수정하라" \
  --model claude-haiku-4-5

// Sonnet: 표준 구현 작업 (기능 개발, 버그 수정)
claude -w feature-impl \
  --dangerously-skip-permissions \
  -p "로그인 기능 구현" \
  --model claude-sonnet-4-6

// Opus: 복잡한 아키텍처 작업 (전체 재설계)
claude -w arch-refactor \
  --dangerously-skip-permissions \
  -p "마이크로서비스 아키텍처로 전환 계획 수립 및 구현" \
  --model claude-opus-4-6

 

환경변수를 통한 설정

// 환경변수로 기본 모델 설정
export ANTHROPIC_MODEL="claude-sonnet-4-6"

# 이후 실행부터 자동으로 sonnet 사용
claude -w my-feature --dangerously-skip-permissions -p "기능 구현"

// CI/CD 환경에서 유용한 환경변수들
# API 키 설정
export ANTHROPIC_API_KEY="sk-ant-..."

# 백그라운드 작업 비활성화 (CI에서 유용)
export CLAUDE_CODE_DISABLE_BACKGROUND_TASKS=1

# 자동 압축 임계값 조정 (기본 95%)
export CLAUDE_AUTOCOMPACT_PCT_OVERRIDE=50

# 실험적 에이전트 팀 기능 활성화
export CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1
💡 --allowedTools: 더 안전한 부분 자동화 대안

--dangerously-skip-permissions 대신 필요한 도구만 선택적으로 허용하는 방법도 있다:

// 더 안전한 대안: 필요한 도구만 자동 승인
# 테스트 실행과 수정만 허용
claude -w test-fix \
  -p "테스트 실패를 모두 수정하라" \
  --allowedTools "Bash(npm run test)" "Bash(npm run build)" Read Edit

# git 관련 작업만 허용
claude -w git-tasks \
  -p "변경사항을 커밋하고 PR을 생성하라" \
  --allowedTools "Bash(git diff *)" "Bash(git log *)" "Bash(git commit *)" "Bash(gh pr *)"

 

7. .gitignore 설정

공식 문서에서 워크트리 사용 시 .gitignore에 추가하도록 강력히 권장하는 설정이다. (출처: 공식 Common Workflows Tip)

// .gitignore에 추가
.claude/worktrees/
왜 필요한가?

워크트리 디렉토리(.claude/worktrees/)가 .gitignore에 없으면, 메인 저장소에서 git status 실행 시 워크트리 내용이 추적되지 않은 파일(untracked files)로 표시되어 혼란을 줄 수 있다. 이 한 줄로 깔끔하게 해결된다.

 

8. 활용 시나리오 예시

시나리오 1: 기능 개발과 버그 수정 동시 진행

"로그인 기능 개발"과 "결제 버그 수정"을 동시에 Claude에게 맡기는 상황:

# 터미널 1: 로그인 기능 개발 (대화형)
claude -w login-feature

# 터미널 2: 결제 버그 수정 (헤드리스 자동화)
claude -w payment-bugfix \
  --dangerously-skip-permissions \
  -p "결제 실패 시 오류 메시지가 표시되지 않는 버그를 수정하라"

 

시나리오 2: 대규모 리팩토링 자동화

레거시 JavaScript 코드베이스를 TypeScript로 마이그레이션하는 작업을 모듈별로 병렬 처리:

  • 각 모듈이 독립된 워크트리에서 작업 → 충돌 없음
  • 각 워크트리의 결과를 개별 검토 후 메인 브랜치에 병합
  • 문제 있는 모듈만 워크트리 삭제하고 재시도 가능
// 모듈별 병렬 TS 마이그레이션
#!/bin/bash
MODULES=("auth" "payment" "notification" "user")

for module in "${MODULES[@]}"; do
  claude -w "ts-migrate-${module}" \
    --dangerously-skip-permissions \
    -p "src/${module}/ 디렉토리의 JS 파일을 TypeScript로 마이그레이션하고,
        타입 오류 없이 빌드가 통과되도록 완성하라." \
    --model claude-sonnet-4-6 \
    --max-turns 40 \
    > "migrate-${module}.log" 2>&1 &
done

wait
echo "마이그레이션 완료! 각 worktree-ts-migrate-* 브랜치를 검토하세요."

 

시나리오 3: CI/CD 파이프라인 통합

GitHub Actions에서 Claude Code를 활용하는 공식 통합 방법: (출처: 공식 GitHub Actions 문서)

// .github/workflows/claude-auto-fix.yml
name: Claude Code Auto Fix
on:
  pull_request:
    types: [opened]

jobs:
  auto-fix:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
        with:
          fetch-depth: 0

      - uses: anthropics/claude-code-action@v1
        with:
          anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
          prompt: "PR의 코드를 검토하고 타입 오류 및 린트 오류를 수정하라"
          claude_args: |
            --max-turns 20
            --model claude-sonnet-4-6
            --allowedTools "Bash(npm run *)" Read Edit Grep Glob
CI/CD에서 --dangerously-skip-permissions 대신 --allowedTools 권장

GitHub Actions 환경은 이미 격리된 runner에서 실행되므로, --dangerously-skip-permissions 대신 --allowedTools로 필요한 도구만 허용하는 것이 더 안전하고 감사(audit) 추적에 유리하다.

 

9. 보안 고려사항

권한 계층 구조

Claude Code의 권한 설정은 다음 우선순위로 적용된다: (출처: 공식 Permissions 문서)

우선순위 (높음 → 낮음)

1. managed settings (관리자 설정)
        /Library/Application Support/ClaudeCode/managed-settings.json
   ↓
2. CLI 인수 (--dangerously-skip-permissions 등)
   ↓
3. 로컬 프로젝트 설정
        .claude/settings.local.json
   ↓
4. 공유 프로젝트 설정
        .claude/settings.json
   ↓
5. 사용자 설정
        ~/.claude/settings.json
        

 

 

10. 트러블슈팅 및 FAQ

Q1: git worktree 명령이 실패

확인사항:

  • Git 저장소 안에서 실행하고 있는지 확인 (git status)
  • Git 버전이 2.5+ 이상인지 확인 (git --version)
  • 동일한 이름의 워크트리가 이미 존재하는지 확인 (git worktree list)

 

Q2: 워크트리에서 .claude/agents/가 인식되지 않아요

v2.1.47 버그 수정 내용: 이전 버전에서는 git 워크트리에서 실행 시 커스텀 에이전트 및 스킬이 발견되지 않는 문제가 있었다. v2.1.47에서 수정되어 메인 저장소의 .claude/agents/.claude/skills/가 워크트리에서도 자동으로 포함된다. (출처: 공식 CHANGELOG #25816)

Claude Code를 v2.1.47 이상으로 업데이트
claude update

 

Q3: 워크트리가 너무 많이 쌓였어요

일괄 정리 방법:

// 모든 Claude 워크트리 목록 확인
git worktree list | grep ".claude/worktrees"

// 모든 Claude 워크트리 일괄 삭제 (변경사항 포함)
git worktree list --porcelain | grep "worktree.*\.claude/worktrees" | \
  awk '{print $2}' | xargs -I{} git worktree remove --force {}

// 관련 브랜치 일괄 삭제
git branch | grep "worktree-" | xargs git branch -D

 

Q4: --dangerously-skip-permissions가 작동하지 않아요

조직/팀 환경이라면 관리자가 managed settings로 이 기능을 비활성화했을 가능성이 있다. 시스템 설정 파일을 확인해보자.

// macOS에서 managed settings 확인
cat "/Library/Application Support/ClaudeCode/managed-settings.json" 2>/dev/null

// Linux에서 managed settings 확인
cat /etc/claude-code/managed-settings.json 2>/dev/null
알려진 사항 (v2.1.50 기준)
  • WorktreeCreate / WorktreeRemove 훅 이벤트는 CHANGELOG에서 추가가 확인되었으나, 2026년 2월 기준 공식 Hooks Reference 문서에는 아직 등재되어 있지 않다 — 동작 확인은 직접 테스트 또는 CHANGELOG를 통해 검증 권장
  • Agent Teams 기능은 현재 실험적(experimental) 상태로 기본 비활성화
  • 심볼릭 링크가 포함된 작업 디렉토리에서 세션이 보이지 않는 버그가 수정됨 (정확한 수정 버전은 CHANGELOG에서 확인 권장)

 

11. 실제 검증 결과

이 가이드의 내용이 실제로 동작하는지 직접 실행하여 검증한 결과다. Claude Code v2.1.50, macOS 26.1 (Apple Silicon) m2max 환경에서 테스트 한 내용

검증 환경
  • Claude Code 버전: 2.1.50
  • OS: macOS 26.1
  • 검증일: 2026-02-21
  • 검증 방법: git worktree 명령어 직접 실행

검증 1: Claude Code 버전 확인

// 버전 확인
$ claude --version
2.1.50 (Claude Code)

 

검증 2: 워크트리 생성 — 경로 및 브랜치 패턴 확인

claude -w <name>이 내부적으로 사용하는 방식과 동일하게 git worktree add .claude/worktrees/<name> -b worktree-<name>을 실행해 경로와 브랜치명을 직접 확인했다.

// 워크트리 생성 실행
$ git worktree add .claude/worktrees/verify-test -b worktree-verify-test

Preparing worktree (new branch 'worktree-verify-test')
HEAD is now at 88e452f feat: Gemini 3.1 Pro comprehensive guide

// git worktree list 확인
$ git worktree list

/Users/.../dev-blog                                  88e452f [main]
/Users/.../dev-blog/.claude/worktrees/verify-test    88e452f [worktree-verify-test]
검증 결과
  • 워크트리 경로: .claude/worktrees/<name> 
  • 브랜치 패턴: worktree-<name>

ex) claude -w worktree-verify-test

 

 - sourcetree에서도 확인

 

검증 3: 워크트리 내부 .git 파일 구조

// 워크트리 내부 .git 파일 (심볼릭 링크가 아닌 일반 파일)
$ cat .claude/worktrees/verify-test/.git

gitdir: /Users/.../dev-blog/.git/worktrees/verify-test

// HEAD 확인
$ cat .git/worktrees/verify-test/HEAD

ref: refs/heads/worktree-verify-test

워크트리 내부의 .git은 디렉토리가 아닌 일반 파일이며, 메인 저장소의 .git/worktrees/를 가리키는 포인터 역할을 한다. 이는 표준 Git Worktree 동작 방식이며, 이력과 객체를 공유하면서도 독립된 작업 디렉토리를 제공한다.

 

검증 4: 정리(Cleanup) 동작 — 변경사항 없을 때 자동 제거

// 변경사항 없는 워크트리 제거 (에러 없이 즉시 삭제)
$ git worktree remove .claude/worktrees/verify-test

$ git worktree list
/Users/.../dev-blog    88e452f [main]
# → 워크트리 디렉토리와 브랜치가 정상 제거됨

 - 작업 종료시 해당 worktree 삭제 여부 확인

 

검증 5: .gitignore 현황

현재 이 저장소의 .gitignore.claude/worktrees/ 항목이 없음을 확인했다. 실제로 워크트리를 생성하면 해당 디렉토리가 Git에 추적될 수 있으므로, 이 가이드에서 권장하는 대로 .gitignore에 다음을 추가하는 것이 좋다.

// .gitignore에 추가 권장
.claude/worktrees/

 

12. 참고 자료

자료 링크
공식 Common Workflows (Worktree) code.claude.com/docs/en/common-workflows
공식 Sub-agents 문서 code.claude.com/docs/en/sub-agents
공식 Permissions 문서 code.claude.com/docs/en/permissions
공식 CLI Reference code.claude.com/docs/en/cli-reference
공식 Headless / Agent SDK code.claude.com/docs/en/headless
공식 GitHub Actions 통합 code.claude.com/docs/en/github-actions
CHANGELOG (v2.1.49 ~ v2.1.50) github.com/anthropics/claude-code/CHANGELOG.md
Git Worktree 공식 문서 git-scm.com/docs/git-worktree
Boris Cherny 공식 발표 (Threads) threads.com/@boris_cherny (worktree 발표)
마무리

Claude Code의 --worktree 기능은 단순한 편의 기능이 아니라, 멀티 에이전트 협업의 핵심 인프라다. 각 에이전트가 독립된 브랜치에서 작업하고, 결과를 검토한 후 선택적으로 병합하는 워크플로우는 AI 기반 개발의 안전성과 생산성을 동시에 높여준다.

특히 --dangerously-skip-permissions와의 조합은 신뢰할 수 있는 격리 환경에서만 사용해야 하지만, 올바르게 설정하면 대규모 리팩토링이나 병렬 기능 개발을 크게 가속화할 수 있다. 한 번 써보면 돌아오기 어려운 강력한 기능이니, 한 번 도전해보자.

300x250
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.

💡 AI 관련 질문이 있나요? 눌러보세요!