Codex소개와 개념

Worktree와 Handoff

Codex app의 Worktree가 왜 필요한지와 Local, Worktree 사이를 Handoff로 오가는 안전한 흐름을 공식 문서 기준으로 정리합니다.

마지막 수정 2026년 3월 20일

기본 패턴

text
핵심 흐름
1. 새 스레드에서 Worktree 모드 선택
2. 시작 브랜치 선택
3. Codex가 별도 worktree 생성
4. 백그라운드에서 작업 진행
5. 필요하면 Handoff로 Local로 가져와 검증

설명

  • 공식 문서에서 Worktree는 같은 저장소 안에서 여러 독립 작업을 동시에 돌리기 위한 Codex app의 핵심 기능입니다.
  • Worktree는 Git worktree 위에 만들어지므로 Git 저장소에서만 쓸 수 있고, 현재 Local 체크아웃을 건드리지 않은 채 별도 작업 공간을 만듭니다.
  • Local을 전경 작업, Worktree를 배경 작업으로 생각하면 이해가 쉽습니다. 지금 보고 있는 IDE와 개발 서버는 Local에 두고, 장시간 수정은 Worktree에 맡기는 식입니다.
  • Handoff는 Worktree와 Local 사이에서 스레드와 코드를 안전하게 옮기는 흐름입니다. Codex가 필요한 Git 작업을 처리해 줍니다.
  • 중요한 제한도 있습니다. Git은 같은 브랜치를 두 체크아웃에서 동시에 잡는 것을 허용하지 않으므로, 같은 브랜치를 Local과 Worktree에서 동시에 유지하려 하지 말고 Handoff를 쓰는 편이 맞습니다.

짧은 예제

text
잘 맞는 상황
- 지금 Local에서 게임을 직접 실행 중이고, 다른 수정 작업은 백그라운드로 돌리고 싶다.
- 기능 A를 건드리는 동안, 기능 B 리팩터링을 별도 체크아웃에서 병렬로 맡기고 싶다.
- Worktree에서 만든 변경을 마지막 검증은 내 평소 IDE와 로컬 서버에서 보고 싶다.

빠른 정리

항목의미
Local평소 쓰는 현재 체크아웃
WorktreeCodex가 만든 별도 Git 체크아웃
HandoffLocal과 Worktree 사이의 안전한 이동
장점현재 로컬 작업을 건드리지 않고 병렬 작업 가능
주의점같은 브랜치를 두 곳에서 동시에 checkout할 수 없음

주의할 점

Handoff는 Git 기반으로 움직이기 때문에 .gitignore에 들어간 파일은 함께 이동하지 않습니다. 로컬 개발 서버 설정이나 생성 파일에 의존하는 작업이라면, 이동 후 어떤 것이 빠지는지 먼저 생각하는 편이 좋습니다.

참고 링크

2 sources