Worktree — 병렬 AI 코딩10-1

Worktree란? — 여러 사건을 동시에 펼쳐놓기

Git Worktree의 개념을 이해하고, 한 번에 하나의 작업만 하던 방식에서 여러 작업을 동시에 병렬 처리하는 방법의 원리를 배웁니다.

왜 Worktree가 필요한가요?

[기존 방식] 부당해고 구제신청서를 작성하다가, 급하게 임금체불 진정서를 처리해야 하는 상황을 떠올려 보세요. 기존에는 작업 중이던 파일을 저장하고, 다른 브랜치로 전환하고, 그 사이 맥락을 잃어버리고, 다시 원래 작업으로 돌아오면 "아까 어디까지 했더라?" 하며 시간을 낭비했습니다. 노무사 업무에 비유하면, 사건부 하나에 3건의 사건 서류를 번갈아 꺼내고 넣으며 일하는 것과 같습니다. A사건 서류를 펼쳐놓고 검토하다가, B사건이 급하면 A서류를 치우고 B를 꺼내야 합니다. 다시 A로 돌아오면 "아까 몇 페이지까지 봤지?" 하며 헤매게 됩니다. [AI 활용 후] Worktree를 사용하면 같은 프로젝트(같은 캐비닛)의 서류를 여러 책상 위에 동시에 펼쳐놓을 수 있습니다. 책상 1에는 부당해고 서류, 책상 2에는 임금체불 서류, 책상 3에는 취업규칙 검토 서류가 각각 펼쳐져 있습니다. 서류를 치우고 다시 꺼낼 필요 없이, 책상만 옮겨 앉으면 바로 이어서 작업할 수 있습니다.
TIP: Worktree는 코딩 전문가만 쓰는 고급 기술이 아닙니다. 개념만 이해하면 누구나 바로 활용할 수 있고, Claude Code가 복잡한 부분은 알아서 처리해 줍니다.

핵심 용어 사전 — 노무사 비유로 이해하기

Worktree를 이해하려면 몇 가지 용어를 알아야 합니다. 어렵지 않습니다. 모두 노무사 사무실에 대응하는 개념이 있습니다. Git(깃): 파일의 변경 이력을 추적하는 시스템입니다. 노무사 사무실의 '사건 관리 대장'과 같습니다. 누가, 언제, 어떤 서류를 수정했는지 모든 기록이 남습니다. 저장소(Repository): 하나의 프로젝트에 속한 모든 파일과 변경 이력을 담는 공간입니다. 노무사 사무실의 '사건별 캐비닛' 하나라고 생각하시면 됩니다. 브랜치(Branch): 원본을 건드리지 않고 별도의 작업 흐름을 만드는 것입니다. 구제신청서 초안을 작성할 때 원본 서류를 복사해서 초안 작업하는 것과 같습니다. 원본은 그대로 있고, 초안이 완성되면 원본에 반영합니다. 워크트리(Worktree): 같은 저장소(캐비닛)에서 여러 브랜치(작업 흐름)를 동시에 열어놓을 수 있는 기능입니다. 캐비닛은 하나지만, 여러 책상 위에 각각 다른 서류를 펼쳐놓는 것입니다.
TIP: 이 용어들을 외울 필요는 없습니다. 실습하면서 자연스럽게 익혀지니, 지금은 '아, 이런 개념이구나' 정도만 파악하시면 충분합니다.

Before vs After — 브랜치 전환과 Worktree 비교

Worktree가 왜 혁신적인지, 기존 방식과 비교해 보겠습니다. [Before — 브랜치 전환 방식] 1. 부당해고 구제신청서 작업 중 (branch: unfair-dismissal) 2. 급한 임금체불 진정서 요청이 들어옴 3. 현재 작업 저장 → git stash 또는 git commit (수 분 소요) 4. 브랜치 전환 → git checkout wage-claim (수십 초 소요) 5. 임금체불 진정서 작업 시작 — 하지만 아까 부당해고 맥락은 이미 날아감 6. 작업 완료 후 다시 부당해고 브랜치로 전환 (또 수십 초) 7. "아까 어디까지 했더라?" — 맥락 복구에 5~10분 [After — Worktree 방식] 1. 터미널 창 1: 부당해고 구제신청서 작업 중 (자기만의 폴더에서) 2. 급한 임금체불 진정서 요청이 들어옴 3. 터미널 창 2를 열고 바로 임금체불 작업 시작 (0초, 별도 폴더) 4. 임금체불 작업 완료 5. 터미널 창 1로 돌아오면 — 아까 작업하던 상태 그대로! 전환 시간: 수 분 → 0초. 맥락 분실: 매번 발생 → 완전 격리로 분실 없음.
# [Before] 기존 브랜치 전환 방식 — 번거롭고 맥락을 잃습니다
git stash                    # 현재 작업 임시 저장 (잊어버리기 쉬움)
git checkout wage-claim      # 다른 브랜치로 전환 (시간 소요)
# ... 임금체불 작업 ...
git checkout unfair-dismissal  # 다시 원래 브랜치로
git stash pop                # 임시 저장한 작업 복구 (충돌 위험!)

# [After] Worktree 방식 — 각자 독립된 폴더에서 동시에 작업
# 터미널 1: ~/project/unfair-dismissal 에서 부당해고 작업 계속
# 터미널 2: ~/project/wage-claim 에서 임금체불 작업 동시 진행
# 서로 전혀 영향을 주지 않습니다!

실제 생산성 효과 — 2~5배 향상

Worktree를 활용한 병렬 AI 코딩의 생산성 효과는 이미 여러 사례로 입증되어 있습니다. incident.io 팀은 Claude Code와 Worktree를 결합하여, 기존에 며칠 걸리던 작업을 몇 시간 만에 완료한 사례를 보고했습니다. 여러 기능을 동시에 개발하면서도 서로 간섭 없이 진행할 수 있었기 때문입니다. Kevin Z.라는 개발자는 "Worktree 덕분에 생산성이 3~5배 향상되었다"고 밝혔습니다. 하나의 작업이 AI 처리를 기다리는 동안 다른 작업을 진행할 수 있어, 대기 시간이 사실상 0이 되었다는 것입니다. 노무사 업무에 적용하면 어떨까요? AI에게 부당해고 구제신청서 초안을 요청해 놓고, 기다리는 동안 다른 워크트리에서 임금체불 진정서를 작성시키고, 또 다른 워크트리에서 취업규칙 검토를 진행시킬 수 있습니다. AI가 3건을 동시에 처리하므로, 1건 처리하는 시간에 3건이 완료됩니다. 이것이 바로 "병렬 AI 코딩"의 핵심입니다. AI를 하나만 쓰면 비서 1명이지만, Worktree로 여러 개를 동시에 돌리면 비서 3~4명을 동시에 부리는 것과 같습니다.
TIP: 처음부터 5개씩 병렬로 돌리려 하지 마세요. 2개부터 시작해서 익숙해지면 늘려가는 것이 좋습니다. 다음 레슨에서 구체적인 실습 방법을 안내합니다.

핵심 정리

  • Worktree는 같은 프로젝트에서 여러 작업을 동시에 펼쳐놓고 병렬로 진행하는 Git 기능입니다
  • 브랜치 전환 방식(수 분, 맥락 분실)과 달리 Worktree는 0초 전환, 완전 격리를 제공합니다
  • 실제 사례에서 2~5배 생산성 향상이 보고되었으며, 노무사 업무에도 동일하게 적용됩니다
  • AI 비서 1명을 3~4명으로 늘리는 효과를 얻을 수 있습니다

이 강의가 어떠셨나요?