코드 관리

워크트리(Work Tree)

워크트리는 Git 저장소의 파일을 실제로 열고 수정하는 작업 디렉터리입니다.

쉬운 설명

에디터에서 코드를 고치는 폴더가 Git의 워크트리예요. 커밋으로 기록한 내용과 아직 기록하지 않은 수정이 이 폴더의 파일에 나타나요. Git의 worktree 기능으로 같은 저장소에 연결된 작업 폴더를 여러 개 만들 수도 있어요. AI 에이전트에게 다른 작업을 동시에 맡길 때 이런 별도 폴더를 쓰는 경우가 있어요.

이런 상황에서 만나요

신청 폼 수정은 진행 중인데 README도 별도로 고치고 싶다고 해 볼게요. 같은 폴더에서 브랜치를 계속 전환하는 대신, 별도의 연결된 워크트리에서 문서 작업을 진행할 수 있어요.

작업 폴더와 브랜치를 짝지어 확인해요

설명용 화면
1신청 폼 수정
폴더: study-form/
브랜치: form-fix
수정: SignupForm.tsx
2안내문 수정
폴더: study-docs/
브랜치: docs-update
수정: README.md
3함께 확인할 자원

개발 서버 포트

외부 데이터베이스와 계정

  1. 1첫 번째 작업의 파일이 놓인 위치예요.
  2. 2같은 저장소에 연결된 별도 워크트리 예시예요.
  3. 3폴더를 나눠도 자동으로 격리되지 않는 자원이 있어요.
두 작업 폴더를 사용하는 가상 구성입니다. 각 폴더의 설치·환경 설정은 별도로 확인해야 합니다.

AI에게 작업을 맡길 때 폴더 경로와 브랜치를 함께 확인해 주세요. 다른 워크트리의 수정을 기대한 화면에서 볼 수 없다면, 개발 서버가 어느 폴더에서 실행됐는지도 확인해요. 작업을 합친 뒤에는 최종 폴더에서 기능을 다시 검증해요.

헷갈리기 쉬운 점

워크트리를 나누면 모든 실행 환경도 분리되나요?

파일을 별도 폴더에서 다루는 것과 컴퓨터 자원을 완전히 격리하는 것은 달라요. 두 서버가 같은 포트를 쓰려 하거나 같은 외부 데이터베이스를 수정할 수 있어요. 패키지 설치나 .env 같은 설정 파일도 새 폴더에서 따로 준비해야 할 수 있어요.

워크트리를 지우기 전에 커밋하지 않은 수정과 아직 합치지 않은 기록을 확인하세요. 다른 폴더에 있다는 이유로 데이터베이스나 계정 권한도 분리됐다고 생각하면 안 돼요.

왜 알아야 할까요?

에이전트가 수정한 파일과 지금 보고 있는 서버가 다른 폴더를 사용하는 문제를 찾을 수 있어요. 동시에 맡길 작업의 범위와 공유 자원도 더 분명하게 정할 수 있어요.

조금 더 자세히

일반적인 Git 저장소에는 기본 워크트리가 있습니다. git worktree 명령으로 연결된 워크트리를 추가하면 저장소의 기록을 공유하면서 파일과 현재 체크아웃 상태를 별도로 둘 수 있습니다.

브랜치는 커밋을 가리키는 이름이고 워크트리는 파일이 놓인 작업 위치입니다. 같은 브랜치를 여러 워크트리에서 동시에 체크아웃하는 작업은 기본적으로 제한되므로 작업별 브랜치를 구분합니다.

직접 사용할 때 확인해 보세요

  • 작업 폴더와 브랜치를 함께 확인한다
  • 서버 포트와 외부 데이터 공유 여부를 확인한다
  • 삭제 전에 미커밋 수정과 병합 상태를 확인한다

관계 지도

워크트리(Work Tree) 중심으로 관련 개념의 정의와 관계를 한눈에 정리했습니다.
워크트리(Work Tree)의 정의와 관련 개념 간 관계를 설명한 계층형 그래프