워크트리란 무엇인가요?
일반적인 Git 사용에서는 저장소 하나에 작업 트리(working tree)가 하나뿐입니다. 그래서 브랜치를 바꾸려면 매번checkout으로 같은 폴더의 내용을 통째로 바꿔야 하죠. 작업하던 브랜치를 잠시 두고 다른 브랜치를 봐야 할 때, 커밋하거나 stash로 변경사항을 치워야 하는 번거로움이 여기서 옵니다.
Git worktree는 이 제약을 풀어 줍니다. 하나의 저장소(.git 히스토리는 공유)에 대해 여러 개의 작업 트리를 서로 다른 폴더에 두고, 각 폴더에 서로 다른 브랜치를 동시에 체크아웃해 둘 수 있습니다.
저장소를 처음 열었을 때의 원래 작업 트리를 기본 워크트리(primary worktree)라고 부릅니다.
git worktree add로 추가로 만든 폴더는 연결된(linked) 워크트리입니다. 커밋 히스토리와 브랜치는 모든 워크트리가 함께 공유하지만, 각 폴더에 체크아웃된 브랜치와 작업 중인 변경사항은 서로 독립적입니다.언제 유용한가요?
코드 리뷰
작업 중인 브랜치를 그대로 둔 채, 동료의 브랜치를 별도 폴더에 체크아웃해 실제로 빌드하고 실행하며 리뷰할 수 있습니다.
긴급 핫픽스
기능 작업 도중 급한 버그가 들어와도, stash 없이 새 워크트리에서
main 기반 핫픽스를 진행하고 원래 작업으로 그대로 돌아옵니다.병렬 작업
두세 개의 기능을 각각의 폴더에서 동시에 진행합니다. 빌드 산출물이나 의존성이 서로 섞이지 않습니다.
장시간 실행 비교
한 브랜치에서 테스트를 오래 돌리는 동안, 다른 워크트리에서 방해받지 않고 계속 코드를 작성할 수 있습니다.
ParalleLane은 워크트리를 어떻게 다루나요?
많은 Git 클라이언트에서 워크트리는 숨겨진 고급 기능이지만, ParalleLane은 이를 1급 개념으로 전면에 내세웁니다.사이드바에 워크트리를 직접 표시
사이드바에 워크트리를 직접 표시
좌측 사이드바에서 각 저장소 아래에 그 저장소의 워크트리들이 나열됩니다. 기본 워크트리는 폴더 체크 아이콘, 연결된 워크트리는 Git 폴더 아이콘으로 구분되며, 각 행은 체크아웃된 브랜치(또는 분리된 HEAD의 짧은 SHA)와 앞섬/뒤처짐(ahead/behind) 정보를 보여 줍니다. 워크트리 행을 클릭하면 그 워크트리로 전환됩니다.

워크트리별 독립 커밋 그래프
워크트리별 독립 커밋 그래프
ParalleLane의 상징인 스트리밍 커밋 그래프는 워크트리마다 따로 계산되고 캐시됩니다. 그래프에 어떤 범위의 브랜치가 그려지는지는 워크트리 종류에 따라 다릅니다 — 자세한 규칙은 그래프 스코프: 현재 브랜치 vs 모든 브랜치에서 다룹니다.
워크트리별 독립 상태
워크트리별 독립 상태
각 워크트리는 자신만의 커밋 그래프 캐시, 저장소 개요(로컬·원격 브랜치, 태그, 스태시), 워킹 카피 상태를 따로 유지합니다. 우측 사이드바 최상단의 워킹 카피(Working copy) 카드는 현재 선택한 워크트리의 충돌/변경 상태를 즉시 알려 줍니다.
상단 브레드크럼으로 위치 확인
상단 브레드크럼으로 위치 확인
콘텐츠 영역의 상단 바는 연결된 워크트리를 보고 있을 때
프로젝트 ⟩ 워크트리 ⟩ 브랜치 형태로 경로를 표시해, 지금 어느 워크트리의 어느 브랜치에 있는지 한눈에 알 수 있습니다.이 그룹에서 다루는 내용
워크트리 생성·전환·삭제
새 워크트리를 만들고, 사이드바에서 전환하고, 안전하게 삭제하는 방법을 안내합니다.
워크트리별 상태
우측 사이드바 상태 표시, 워크트리별 독립 그래프·탭·상태, 사이드바 행 표기 규칙을 설명합니다.
점유 브랜치 & 워크트리 정리
이미 점유된 브랜치 체크아웃 처리와, 유령·무효 워크트리 감지 및 정리(prune)를 다룹니다.
기본으로 돌아가기
브랜치 체크아웃 등 히스토리 관련 기본 동작이 궁금하다면 여기를 참고하세요.

