# Codex worktree: 두 번째 작업을 위한 별도의 작업 사본

> Codex CLI 0.155.1 작업 사본: 실험적 worktree 플래그, 소스 HEAD, 새 폴더 확인, 결과 보존 및 안전한 제거.

Source: https://ailoot.ai/blog/ko/codex-worktree-separate-task/
Canonical: https://ailoot.ai/blog/ko/codex-worktree-separate-task/
Language: ko
Publisher: Ailoot (https://ailoot.ai/)
Translation: guide-086
Revision: sha256-54a452bdb79d92a0fffde5ce0dbcc5c09aa9523a06a60a0241e9fe6a8eff544e


<div class="aside" data-semantic="key-takeaway" role="note" aria-label="이 섹션의 핵심 요점">

핵심 요점

Codex CLI 버전 0.155.1에서는 `codex --enable worktrees --worktree`를 사용해 두 번째 작업을 위한 별도의 작업 사본을 만듭니다. 이 기능은 실험적이며 기본적으로 비활성화되어 있습니다. 미리 활성화하지 않았다면 `--enable worktrees` 없이 `--worktree`를 지정할 경우 Codex가 시작을 거부합니다. 사본은 원래 프로젝트의 최신 커밋(HEAD)에서 생성되며, 커밋하지 않은 변경 사항은 포함되지 않고 이름이 지정된 브랜치가 연결되지 않은 detached HEAD 상태가 됩니다.

</div>

예를 들어, Codex CLI로 한 모듈을 리팩터링하던 중 두 번째 작업, 즉 다른 모듈의 테스트 작성이 생겼다고 해 보겠습니다. 같은 폴더에서 두 번째 세션을 열면 첫 번째 작업과 두 번째 작업의 변경 사항을 혼동하기 쉽습니다. `--worktree` 플래그는 두 번째 작업을 위해 같은 프로젝트의 별도 폴더를 만들어 첫 번째 작업은 그대로 둡니다.

에이전트와 병렬로 작업할 때 유용한 자료: [Ailoot 문서](https://ailoot.ai/docs/).



## `--worktree`가 만드는 것과 사본에 포함되는 파일

Git 용어로 worktree는 같은 저장소에 연결된 추가 작업 폴더입니다. 커밋 기록은 공유하지만 디스크에는 자체 파일 집합을 둡니다. Codex CLI 0.155.1에서 `--worktree` 플래그는 이 Git 메커니즘을 사용해 별도의 폴더에서 새 에이전트 세션을 시작하며, 첫 번째 작업이 이미 진행 중인 폴더는 그대로 둡니다.

새 작업 사본에는 실행 시점에 원래 프로젝트의 HEAD가 가리키는 커밋의 파일이 들어갑니다. 즉, 편집기에서 파일을 마지막으로 저장한 시점이 아니라 최신 커밋의 파일입니다. 이 명령은 커밋하지 않은 변경 사항이나 새 파일을 옮기지 않습니다. 편집기에서 저장하는 것은 Git에서 커밋하는 것과 다릅니다. 두 번째 작업을 시작할 때 첫 번째 폴더에 커밋하지 않은 변경 사항이 남아 있다면, 그 변경 사항은 해당 폴더에만 남습니다.

이것은 저장소 전체의 백업도, 컴퓨터 전체의 격리도 아닙니다. 같은 브랜치와 커밋 기록에 접근할 수 있는, 같은 프로젝트의 두 번째 작업 폴더입니다. 다른 도구에서 비슷한 메커니즘을 사용하려면 [Claude Code와 git worktree: 병렬 작업](https://ailoot.ai/blog/ko/claude-code-git-worktree/)을 참조하세요.

## 준비: 버전, 프로젝트 신뢰 상태, 커밋

시작하기 전에 세 가지를 확인하세요. 명령은 원래 프로젝트 폴더에서 실행합니다.

먼저 Codex CLI 버전을 확인하세요. 이 안내는 버전 0.155.1에 적용됩니다. 다른 버전에서는 플래그 동작을 별도로 확인하세요.

```bash
codex --version
```

둘째, HEAD가 기존 커밋을 가리키는 로컬 Git 프로젝트가 필요합니다. 즉, 저장소에 커밋이 하나 이상 있어야 합니다. 그렇지 않으면 사본을 만들 원본이 없습니다.

셋째, 소스가 신뢰된 상태여야 합니다. 프로젝트가 명시적으로 신뢰할 수 없는 것으로 표시되어 있으면 `--worktree`로 시작할 때 사본이 만들어지기 전에 실패합니다. Codex CLI를 처음 설정하는 중이라면 기본 준비 방법은 [Codex (OpenAI): 개요와 시작 방법](https://ailoot.ai/blog/ko/openai-codex-install/)에서 확인할 수 있습니다.

시작하기 전에 이 저장소의 기존 작업 사본 목록을 확인하세요. 실행 후 비교할 때 사용할 수 있습니다.

```bash
git worktree list
```

폴더를 분리하면 작업을 구분하기 쉽습니다. 에이전트와 함께 작업하는 전반적인 방법은 [Ailoot 문서](https://ailoot.ai/docs/)의 실용적인 자료를 참고하면 좋습니다.



## 단계: 두 번째 작업을 위한 별도 사본 시작하기

1.  ### 실험적 기능을 활성화하고 별도 사본으로 세션 시작하기

    첫 번째 작업을 이미 진행 중인 원래 프로젝트 폴더에서 명령을 실행하세요.

    ```bash
    codex --enable worktrees --worktree
    ```

    예상 결과: Codex가 현재 HEAD에서 프로젝트의 새 작업 사본을 만들고 그곳에서 에이전트 세션을 엽니다. 사본은 이름이 지정된 브랜치가 연결되지 않은 detached HEAD 상태입니다. 버전 0.155.1에서 이 플래그는 이렇게 작동합니다.

2.  ### 원래 프로젝트의 다른 터미널에서 작업 사본 목록 다시 확인하기

    ```bash
    git worktree list
    ```

    예상 결과: 출력에 새 사본의 경로와 detached HEAD 표시(또는 브랜치가 있다면 브랜치)가 포함된 행이 추가됩니다. 이 목록으로 Git이 사본을 등록했음을 알 수 있지만, 에이전트가 작업을 완료했는지는 확인할 수 없습니다. 파일이 있는지 확인하려면 표시된 경로의 폴더를 열고 내용을 확인하세요.

## 결과 확인 및 작업 보존 방법

새 사본에서 두 번째 작업이 끝나면 결과를 별도로 저장하고 옮겨야 합니다. `--worktree` 명령은 변경 사항을 메인 브랜치에 병합하거나 결과를 자동으로 옮기지 않습니다. 사본은 detached HEAD 상태로 유지되므로, 그 안에서 커밋해도 그 자체로 새 브랜치가 만들어지지는 않습니다. 해당 커밋을 보존해야 한다면 사본 폴더를 삭제하기 전에 브랜치에 연결하거나 메인 프로젝트로 옮기세요.

결과를 보존하기 전에는 사본 폴더를 삭제하지 마세요. 작업 폴더가 깨끗한지 확인하는 것만으로 필요한 커밋을 보존한 것은 아닙니다. 해당 커밋에는 여전히 브랜치가 연결되어 있지 않을 수 있습니다.

서로 다른 도구에서 여러 작업을 동시에 진행한다면, 작업이 서로 간섭하지 않도록 미리 계획하세요. 두 에이전트를 함께 사용하는 방법은 [Claude Code와 Codex 함께 사용하기](https://ailoot.ai/blog/ko/claude-code-codex-together/)에서 다룹니다.

## 시작이 중단된 경우: 사본을 찾는 방법

`--worktree`를 사용한 시작은 여러 이유로 실패할 수 있습니다.

- 기능을 미리 활성화하지 않았고 시작 명령에 `--enable worktrees`가 포함되지 않은 경우: Codex는 `--worktree` 플래그로 시작하기를 거부합니다.
- 잘못된 폴더에 있거나 커밋이 없는 경우: 현재 폴더가 Git 저장소가 아니거나 아직 커밋이 하나도 없다면 사본을 만들 원본이 없습니다.
- 프로젝트가 명시적으로 신뢰할 수 없는 소스로 표시된 경우: Codex는 `--worktree`로 세션을 시작하기를 거부합니다. 먼저 올바른 프로젝트를 열었는지 확인하세요. 신뢰 상태를 자동으로 변경하지 마세요.

예를 들어 프로세스가 중단되어 세션이 새로 만든 사본에 연결되지 못했더라도 작업 폴더는 자동으로 삭제되지 않습니다. 먼저 작업 사본 목록을 확인하고, 삭제하기 전에 Codex CLI 세션이 이 사본을 사용 중이지 않은지 확인하세요.

```bash
git worktree list
```

삭제하기 전에 폴더를 열고 필요한 변경 사항을 저장하세요. 에이전트 세션이 시작을 완료하지 못했더라도 사본은 남아 있을 수 있습니다. 사본이 존재하고 더 이상 필요하지 않으며 어떤 세션도 사용 중이지 않음이 확실하다면, 원래 저장소에서 `git worktree remove`를 실행하고 폴더 경로를 지정해 수동으로 제거하세요. `--force`를 추가하지 마세요. 사본에 커밋하지 않은 파일이나 추적되지 않는 파일이 있으면 명령이 삭제를 거부합니다. 삭제가 거부되면 보호 기능을 끄지 말고 폴더 내용을 확인하세요.

Codex CLI를 업데이트할 때는 `codex --version`을 다시 확인하고 `git worktree list`로도 확인하세요. 실험적 플래그는 버전에 따라 다르게 동작할 수 있습니다.





더 많은 자료와 도구: [Ailoot](https://ailoot.ai/).

## Codex worktree: 두 번째 작업을 위한 별도의 작업 사본 | Ailoot: 자주 묻는 질문

### 두 번째 worktree에 저장되지 않았거나 커밋되지 않은 수정도 포함되나요?

아닙니다. 설명한 CLI 버전에서는 원본 저장소의 HEAD 커밋에서 시작합니다. 커밋되지 않은 변경과 새 파일은 원래 폴더에 남으므로 편집기에서 저장하는 것만으로 이전되지는 않습니다.

### 깨끗한 detached worktree는 삭제해도 안전한가요?

깨끗한 폴더에도 이름 있는 브랜치에 속하지 않은 커밋이 있을 수 있습니다. 먼저 해당 커밋을 보존하거나 이전하고 사용하는 세션이 없는지 확인한 뒤 안전장치를 강제로 넘기지 않는 일반 Git worktree 제거를 사용하세요.


## Ailoot · 회사와 그 프로젝트 포트폴리오

Ailoot는 축적된 운영 경험, 폭넓은 고객 기반, 안정적인 서비스, 지속적인 KPI 관리를 바탕으로 합니다.

회사와 그 프로젝트 포트폴리오: 수백만 고객, 매월 수십억 규모의 매출.

Ailoot는 이러한 운영 경험을 고객의 제품, 에이전트, 애플리케이션, 자동화에서 AI 기능을 이용할 수 있는 API 접근에 활용합니다.
