> ## Documentation Index
> Fetch the complete documentation index at: https://docs.parallelane.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 체크아웃

> 브랜치 전환과 자동 fast-forward

그래프에서 더블클릭해 브랜치·태그·커밋으로 전환합니다.
커밋되지 않은 변경이 있으면 처리 방법을 모달에서 고릅니다.

<Frame>
  <img src="https://mintcdn.com/railgit/1HhHpeGsA-i8McQ3/images/history-checkout-dialog.png?fit=max&auto=format&n=1HhHpeGsA-i8McQ3&q=85&s=b5a7da03773e91e911026fd1a4c614e9" alt="브랜치 체크아웃 다이얼로그 — 대상 브랜치와 로컬 변경사항 처리 방법(변경 안 함 / 임시저장 후 복원 / 버리기) 선택" width="886" height="536" data-path="images/history-checkout-dialog.png" />
</Frame>

## 그래프에서 더블클릭 체크아웃

무엇을 더블클릭했는지에 따라 대상이 정해집니다.

* **브랜치 배지** → 그 브랜치(원격 전용 배지는 같은 이름의 로컬 브랜치)
* **태그 배지** → 그 태그(detached HEAD)
* **커밋 본문** → 로컬 `main`/`master` → 그 외 로컬 브랜치 → 원격 브랜치 → 태그 순으로 자동 선택하며, 어느 ref도 없으면 커밋 SHA로 detached 체크아웃

<Note>
  한 번 클릭은 선택만 하고, 전환은 더블클릭에서 일어납니다.
</Note>

<Warning>
  그래프의 **스태시 노드**를 더블클릭하면 체크아웃이 아니라 그 스태시를 즉시 적용합니다.
  [스태시](/ko/remote/stash)를 참고하세요.
</Warning>

## 체크아웃 모달 (로컬 변경 처리)

작업 트리가 깨끗하면 모달 없이 즉시 전환합니다.
커밋되지 않은 변경이 있으면 처리 방법을 고릅니다.

<CardGroup cols={3}>
  <Card title="변경 안 함 (Don't change)" icon="hand">
    변경을 그대로 두고 전환합니다.
    충돌하면 Git이 막습니다.
  </Card>

  <Card title="임시저장 후 복원 (Stash and reapply)" icon="archive">
    stash로 저장하고 전환한 뒤 다시 적용합니다.
    **기본값** 입니다.
  </Card>

  <Card title="버리기 (Discard)" icon="trash-2">
    변경을 폐기하고 전환합니다.
    되돌릴 수 없습니다.
  </Card>
</CardGroup>

## 체크아웃 시 자동 fast-forward pull

업스트림을 추적하는 로컬 브랜치로 체크아웃하면, 전환 직후 백그라운드에서 원격을 fast-forward로 따라잡습니다.

* 체크아웃은 즉시 완료되고 pull은 그 뒤에 실행됩니다.
* fast-forward가 불가능하거나 네트워크·인증이 실패하면 브랜치를 건드리지 않고 경고 알림만 띄웁니다.
  머지·충돌을 만들지 않습니다.

기본으로 켜져 있으며 **설정 → ParalleLane → Git** 의 **체크아웃 시 자동 fast-forward** 토글로 끌 수 있습니다.

<Note>
  이미 체크아웃한 브랜치의 원격 배지를 더블클릭하면, 전환할 것이 없으므로 이 fast-forward pull만 실행합니다(토글과 무관).
</Note>

<Tip>
  머지가 필요한 pull은 [푸시 · 풀 · 페치](/ko/remote/push-pull-fetch)의 Pull 다이얼로그를 사용하세요.
</Tip>

## 다른 워크트리가 쓰는 브랜치

Git은 한 브랜치를 두 워크트리가 동시에 쓰지 못하게 막습니다.
이 경우 **다른 워크트리로 전환(Switch to another worktree)** 확인 모달이 떠서 대상 브랜치와 그 브랜치를 점유한 워크트리를 보여주고, **전환(Switch)** 을 누르면 그 워크트리로 옮겨 갑니다.
현재 워크트리는 건드리지 않으므로 Undo에도 기록되지 않습니다.

<Frame>
  <img src="https://mintcdn.com/railgit/1HhHpeGsA-i8McQ3/images/history-checkout-occupied.png?fit=max&auto=format&n=1HhHpeGsA-i8McQ3&q=85&s=63c779c98daf405ac554b5621ba9a952" alt="대상 브랜치가 다른 워크트리에서 이미 사용 중일 때 뜨는 전환 확인 다이얼로그 — 브랜치와 점유 워크트리 이름, 취소·전환 버튼" width="886" height="500" data-path="images/history-checkout-occupied.png" />
</Frame>

<Note>
  자세한 내용은 [워크트리 고급 활용](/ko/worktrees/advanced)을 참고하세요.
</Note>
