> ## 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.

# 스태시

> 스태시 생성·적용·삭제

스태시는 커밋하기엔 이른 작업 중인 변경을 임시로 치워 두는 기능입니다. 다른 브랜치로 잠깐 이동해야 할 때 유용하며, ParalleLane은 스태시를 커밋 그래프 위에 함께 그려 어느 시점에서 만들어졌는지 보여줍니다.

## 스태시 생성

현재 워크트리의 변경사항을 임시저장합니다.

<Steps>
  <Step title="스태시 버튼 클릭">
    우측 사이드바 툴바의 **스태시** 버튼을 누릅니다. 워킹 카피(Working copy)가 깨끗하면(변경 없음) 버튼은 비활성 상태입니다.
  </Step>

  <Step title="메시지와 옵션 설정">
    스태시 모달에서 옵션을 정합니다.

    * **메시지 (선택)** — 나중에 알아보기 쉽도록 설명을 적어 둡니다.
    * **Staged 변경 유지 (--keep-index)** — 켜면 스태시를 만든 뒤에도 인덱스에 올려 둔(staged) 변경이 워킹 카피에 그대로 남습니다. 일부만 커밋하려고 스테이징을 마친 상태에서, 나머지를 치워 두고 스테이징한 것만 빌드·테스트할 때 사용합니다.
    * **Untracked 파일 포함 (-u)** — 아직 추적되지 않는 새 파일도 함께 저장합니다.
  </Step>

  <Step title="스태시할 파일 선택">
    메시지 입력칸과 옵션 토글 사이에 있는 **Stash할 파일(Files to stash)** 목록에는 staged·unstaged 변경 파일이 체크박스로 나열되고, 기본적으로 전부 선택되어 있습니다. 체크를 해제하면 그 파일은 워킹 카피에 남고 선택한 파일만 스태시됩니다(부분 스태시). 스태시할 변경이 하나도 없으면 이 목록 자체가 나타나지 않습니다.

    * 이름이 바뀐 파일은 `이전이름 → 새이름` 형태로 한 항목으로 표시됩니다. 이 항목을 선택하면 이전 경로의 삭제와 새 경로의 추가가 **함께** 스태시되어, 반쪽만 옮겨진 상태가 남지 않습니다.
    * **Untracked 파일 포함 (-u)** 토글을 끄면 untracked 파일은 목록에서 사라져 선택 대상이 아니게 되고, 다시 켜면 목록에 되돌아옵니다.
    * 전부 선택된 상태라면 경로를 지정하지 않는 일반 스태시로 실행됩니다.
  </Step>

  <Step title="스태시 실행">
    **스태시** 버튼을 누르면 모달이 닫히고 진행·결과가 토스트로 표시됩니다. 완료되면 선택한 파일이 워킹 카피에서 사라지고 그래프가 갱신됩니다. 전부 스태시했다면 워킹 카피가 깨끗해집니다.
  </Step>
</Steps>

<Frame>
  <img src="https://mintcdn.com/railgit/1HhHpeGsA-i8McQ3/images/remote-stash-dialog.png?fit=max&auto=format&n=1HhHpeGsA-i8McQ3&q=85&s=4749fc361c22865709667f34c677eb94" alt="메시지 입력칸과 Staged 변경 유지, Untracked 파일 포함 옵션을 보여주는 스태시 다이얼로그" width="886" height="556" data-path="images/remote-stash-dialog.png" />
</Frame>

<Note>
  파일 목록에서 모든 체크를 해제하면 **스태시** 버튼이 비활성화됩니다. 그 밖의 이유로 실제 저장할 변경이 없을 때도 빈 스태시가 만들어지지 않고, "저장할 변경이 없습니다"에 해당하는 오류로 안내됩니다.
</Note>

## 스태시 적용

저장해 둔 변경을 다시 작업 트리로 불러옵니다.

<Steps>
  <Step title="스태시 선택">
    좌측 저장소 패널의 **스태시** 섹션에서 적용할 항목을 **우클릭**해 \*\*스태시 적용(Apply stash)\*\*을 고르면 적용 모달이 열립니다.
  </Step>

  <Step title="적용 후 삭제 여부 결정">
    **적용 후 스태시 삭제** 옵션으로, 적용에 성공하면 목록에서 지울지 남길지 정합니다. 옵션 아래에 **충돌 시 유지됨** 안내가 붙어 있듯, 충돌이 발생하면 스태시는 삭제되지 않고 안전하게 유지됩니다(해결 방법은 아래 참고).
  </Step>

  <Step title="적용 실행">
    **적용** 버튼을 누르면 모달이 닫히고 진행·결과가 토스트로 표시됩니다. 완료되면 변경이 작업 트리에 복원됩니다.
  </Step>
</Steps>

<Tip>
  스태시 항목을 **더블클릭**하면 모달 없이 곧바로 적용됩니다(이때는 스태시를 삭제하지 않고 목록에 남깁니다). 커밋 그래프의 스태시 노드를 더블클릭해도 같습니다. 적용 후 삭제까지 함께 하려면 우클릭 메뉴의 적용 모달을 쓰세요.
</Tip>

<Frame>
  <img src="https://mintcdn.com/railgit/1HhHpeGsA-i8McQ3/images/remote-stash-apply.png?fit=max&auto=format&n=1HhHpeGsA-i8McQ3&q=85&s=d83c3df085a9467329c16747ef7a52fe" alt="적용할 스태시 항목과 적용 후 스태시 삭제 옵션을 보여주는 스태시 적용 다이얼로그" width="886" height="512" data-path="images/remote-stash-apply.png" />
</Frame>

<Tip>
  적용 모달을 열 때마다 **적용 후 스태시 삭제**가 켜진 상태로 시작하게 하려면 [설정 → ParalleLane → Git](/settings/preferences)의 **적용 후 stash 기본 삭제**를 켜 두세요. 모달의 옵션이 그 값으로 미리 선택됩니다(더블클릭 적용에는 적용되지 않습니다).
</Tip>

### 적용 중 충돌이 났을 때

충돌한 파일은 워킹 카피 패널의 **충돌 파일** 섹션에 모입니다. 파일을 클릭하면 병합 에디터가 열리고, 한쪽 고르기·직접 편집 등 해결 방법은 [병합 충돌 해결](/review/merge-conflicts)과 같습니다.

<Note>
  다만 스태시 적용 충돌은 특수한 경우입니다. `git stash apply`/`pop`은 `MERGE_HEAD` 같은 "진행 중" 상태를 남기지 않으므로 **상단의 충돌 배너도, 계속하기·중단 흐름도 없습니다**. 충돌을 해결해 스테이지에 올린 뒤 평소처럼 커밋하면 되고, 되돌리려면 변경을 폐기하면 됩니다. 스태시는 삭제되지 않고 목록에 남아 있으니 다시 적용할 수 있습니다.
</Note>

## 스태시 삭제

더 이상 필요 없는 스태시를 제거합니다. 좌측 저장소 패널의 스태시 항목을 **우클릭**해 **삭제**를 고르면 삭제 모달이 열리고, `stash@{N}: <메시지>`를 확인한 뒤 **삭제**를 누르면 해당 스태시가 목록에서 사라집니다.

<Warning>
  스태시 삭제는 되돌릴 수 없습니다. 저장된 변경이 필요한지 먼저 확인하세요.
</Warning>

## 그래프에서 스태시 보기

스태시는 목록뿐 아니라 커밋 그래프에도 노드로 표시됩니다.

* 스태시를 만든 시점의 **base 커밋에서 갈라져 나온 별도 노드**로 그려지고, base 커밋 바로 위에 놓입니다.
* 노드는 **점선 원**으로, base로 향하는 연결선도 **점선**으로 그려져 정규 히스토리가 아님을 나타냅니다.
* 행에는 아카이브 아이콘이 붙고, 제목은 `stash@{N}: <메시지>` 형태로 표시됩니다.

<Frame>
  <img src="https://mintcdn.com/railgit/1HhHpeGsA-i8McQ3/images/remote-stash-graph.png?fit=max&auto=format&n=1HhHpeGsA-i8McQ3&q=85&s=bab5baab5e6991294d077b492abd9b42" alt="커밋 그래프에서 base 커밋과 점선으로 연결된 stash 노드가 표시된 화면" width="1726" height="1784" data-path="images/remote-stash-graph.png" />
</Frame>

<Note>
  좌측 스태시 목록에서 항목을 **한 번 클릭**하면 그래프의 해당 스태시 노드로 스크롤·선택됩니다. 스태시 노드를 선택하면 우측 사이드바에 그 스태시의 정보와 담긴 변경 파일 목록이 표시되며, 파일을 고르면 diff가 열립니다.
</Note>
