
여러분 혹시 코딩하다가 "어 잠깐, 이거 커밋 안 했는데 급한 버그 수정 요청 왔네?" 하고 git stash 눌러본 적 있으세요? 🙋♀️ 저는 이번 주에도 세 번이나 그랬어요. 브랜치 왔다 갔다 하면서 stash 했다 pop 했다... 이게 은근 스트레스더라고요. 그러다가 최근에 다시 눈여겨보게 된 게 바로 Git Worktree예요. 심지어 인텔리제이(IntelliJ IDEA)가 2026.2 버전부터 이 기능을 GUI로 지원하기 시작했더라고요! 오늘은 worktree가 뭔지, 실무에서 어떻게 쓰는지, 그리고 인텔리제이에서는 어떻게 클릭 몇 번으로 되는지까지 싹 정리해볼게요 ✨
Git Worktree, 대체 뭐길래? 🌿
한 마디로 하나의 저장소를 여러 개의 작업 폴더로 동시에 열어두는 기능이에요. 원래 Git은 한 폴더에서 브랜치를 하나만 체크아웃할 수 있잖아요? worktree를 쓰면 main, feature/login, hotfix/urgent 브랜치를 각각 다른 폴더에 펼쳐두고 동시에 작업할 수 있어요. 신기한 건 이 폴더들이 전부 .git 히스토리 하나를 공유한다는 거예요. 그래서 커밋 로그도, 설정도 다 같이 써요.
| 구분 | 기존 방식 (checkout/stash) | Git Worktree |
|---|---|---|
| 작업 중 전환 | stash 후 브랜치 이동 필요 |
폴더만 바꾸면 끝 |
| 빌드·테스트 상태 | 브랜치 바꾸면 초기화됨 | 폴더별로 유지됨 |
| 동시 작업 | 사실상 불가능 | 여러 브랜치 동시 진행 |
| 히스토리 | 폴더마다 따로 | .git 하나 공유 |
실무에서 이렇게 씁니다 💼
"그래서 이걸 언제 쓰는데?" 싶으실 텐데, 저는 요즘 이런 상황에서 제일 요긴하게 쓰고 있어요.
| 상황 | worktree 활용법 |
|---|---|
| 🚨 급한 핫픽스 | 현재 작업 그대로 두고 별도 폴더에서 바로 수정·배포 |
| 👀 PR·MR 리뷰 | 리뷰할 브랜치를 새 worktree로 열어서 직접 실행해보기 |
| 🧪 빌드·테스트 대기 | 테스트 도는 동안 다른 폴더에서 다음 작업 이어가기 |
| 🤖 AI 코딩 에이전트 | 에이전트 작업용 폴더를 따로 분리해서 충돌 방지 |
특히 요즘은 AI 코딩 에이전트를 여러 개 동시에 돌리는 분들도 많아서, 작업 공간을 물리적으로 분리해주는 worktree가 다시 주목받는 느낌이에요.
기본 명령어 정리 ⌨️
CLI로 쓸 땐 이 네 가지만 기억하면 돼요.
# 새 worktree 만들기 (브랜치도 같이 생성)
git worktree add -b hotfix/urgent ../hotfix-urgent main
# 지금 있는 worktree 목록 보기
git worktree list
# 다 쓴 worktree 삭제
git worktree remove ../hotfix-urgent
# 수동으로 지운 폴더 흔적 정리
git worktree prune
⚠️ 딱 하나 주의할 점! 같은 브랜치를 두 worktree에서 동시에 체크아웃할 수는 없어요. 그리고 worktree 폴더는 저장소 안이 아니라 바깥(형제 폴더)에 만드는 게 안전해요.

인텔리제이 2026.2, GUI로 더 쉽게 🖥️
명령어 외우기 귀찮으신 분들 반가운 소식이에요! IntelliJ IDEA 2026.2부터 Git worktree를 도구 창(Tool Window)에서 바로 관리할 수 있게 됐어요.
- Version Control(Git) 도구 창 열기 — Windows·Linux는
Alt+9, macOS는 상단 메뉴View → Tool Windows → Git에서 열 수 있어요. - 도구 창 상단 드롭다운에서 Worktrees 탭 선택
Git메뉴 → New Worktree 클릭 → 소스 브랜치, worktree 이름, 저장 위치 지정- 목록에서 worktree를 더블클릭하면 바로 그 작업 폴더로 전환돼요
목록 화면에서 Locked, Prunable 같은 상태도 바로 보여주고, 다 쓴 worktree는 우클릭 한 번으로 삭제·정리(prune)까지 가능해요. 터미널 왔다 갔다 안 해도 되니까 확실히 편해요.

주의사항 체크리스트 ✅
- worktree 폴더는 프로젝트 바깥에 만들기
- 같은 브랜치, 두 곳에서 동시 체크아웃 금지
- 폴더를 직접 옮겼다면
git worktree repair실행하기 - submodule 많은 프로젝트라면 지원이 아직 불완전하니 참고하기
- 다 쓴 worktree는 바로바로
remove·prune으로 정리하기 (안 그러면 폴더가 계속 쌓여요 😅)
CLI vs IDE, 뭐가 더 나을까? ⭐
| 항목 | CLI (git worktree) |
IntelliJ GUI |
|---|---|---|
| 편의성 | ⭐⭐⭐ | ⭐⭐⭐⭐⭐ |
| 학습 난이도 | ⭐⭐ (명령어 암기 필요) | ⭐⭐⭐⭐ (직관적) |
| 상태 파악 | 터미널 텍스트 | 목록·상태 아이콘으로 한눈에 |
| 자동화·스크립트 | ⭐⭐⭐⭐⭐ | 스크립트엔 부적합 |
CI 스크립트나 자동화에 넣을 땐 CLI, 평소 개발할 땐 IDE GUI — 이렇게 섞어 쓰는 게 제일 효율적이더라고요.

이런 분께 추천해요 🙋
- 여러 브랜치를 자주 오가는 백엔드·프론트엔드 개발자라면 stash 스트레스에서 해방될 수 있어요.
- PR 리뷰를 자주 하는 팀 리드라면 리뷰 브랜치를 매번 새 폴더로 열어서 안전하게 테스트할 수 있어요.
- AI 코딩 에이전트를 여러 개 돌리는 분이라면 작업 폴더 분리로 충돌 걱정을 덜 수 있어요.
- 인텔리제이 계열 IDE(IntelliJ, PyCharm, WebStorm, GoLand, PhpStorm) 사용자라면 2026.2 업데이트로 바로 써볼 수 있어요.
마무리 💌
Git worktree, 이름만 들으면 좀 어려워 보이는데 막상 써보면 "왜 이제 알았지" 싶은 기능이에요. 특히 인텔리제이에서 GUI로 지원하기 시작하면서 진입 장벽이 확 낮아진 느낌이에요. 급한 수정 건이나 PR 리뷰 때문에 브랜치 갈아타느라 스트레스받으셨던 분들이라면 이번 주말에 한번 테스트해보시는 거 어떨까요? 여러분은 브랜치 전환할 때 어떤 방법 쓰고 계세요? 댓글로 알려주세요 👇
📚 참고 자료
'개발' 카테고리의 다른 글
| 인텔리제이서 깃허브 코파일럿 쓰는 법 🤖 2026.2 신기능 총정리 (0) | 2026.09.23 |
|---|---|
| 🎨 2025년 블로그 콘텐츠 제작자를 위한 최고의 LoRA 모델 추천 가이드 (3) | 2025.06.17 |
| 🧪 TDD(테스트 주도 개발) 실전 가이드: JetBrains IDE의 테스트 도구 활용하기 (2) | 2025.06.02 |
| 🐳 Docker와 Kubernetes 시작하기: GoLand IDE로 컨테이너화된 애플리케이션 개발하기 (2) | 2025.06.01 |
| 🔍 코드 품질 높이기: SonarLint와 JetBrains IDE를 활용한 클린 코드 작성법 (0) | 2025.05.30 |