라이프스타일
병렬 작업 통합과 검증
파일과 인터페이스 계약에 따라 변경을 통합하고 충돌과 전체 동작을 검증합니다.
읽는 데 약 20분 · 실습 30 분

Codex 학습 목차로 돌아가기Codex 학습 센터: 전체 튜토리얼 목차설치와 첫 작업부터 MD 지침과 고급 연동까지 60개 강의, 열 개 단원을 계획합니다. 수준, 환경, 목표, 명령으로 다음 글을 찾고 미게시 항목의 상태를 확인할 수 있습니다.전체 글 읽기
목표와 준비
이 단락의 학습 자료: WorktreeWorktree와 작업 격리Worktree는 하나의 Git 저장소에 다른 브랜치의 작업 폴더를 만듭니다. 파일이 분리되어도 DB, 포트와 외부 서비스는 공유될 수 있습니다.전체 글 읽기 · 증거 확인하위 에이전트 범위와 품질 확인독립 입력, 수정 범위, 증거를 정하고 하위 에이전트 결과와 누락을 확인합니다.전체 글 읽기
독립 작업은 병렬로 시간을 줄여도 통합에는 순서가 있습니다. 두 완료는 각 브랜치만 끝난 것일 수 있어 같은 화면의 조합 버전에서 검증해야 합니다. 제목·푸터 텍스트로 결과물을 나타내며 전체 사이트 시험으로 부르지 않습니다. 이후 실제 빌드·브라우저 검증에 적용하세요.
1단계: 공통 검증 자료 준비
새 integration-lab을 만들고 터미널을 엽니다. 각 OS에서 아래 Git·Node 명령은 같습니다. 경로와 같은 상위 폴더의 네 이름이 미사용인지 확인하고 이미 있으면 이름을 일관되게 교체하세요. 기존 작업을 덮어쓰지 않습니다.
git init -b main
git config user.name "Codex Learner"
git config user.email "learner@example.test"
아래 세 파일을 만들고 제목·푸터 초기값에 마지막 줄바꿈을 남깁니다. 테스트는 미구현 요구 두 가지이므로 기준은 의도적인 0 통과·2 실패입니다. 원격 없는 독립 자료이며 운영 main에 설명 없는 실패를 남기는 것이 아닙니다.
Title: Small Steps
Footer: Local exercise
import test from 'node:test';
import assert from 'node:assert/strict';
import { readFileSync } from 'node:fs';
const read = name => readFileSync(new URL(name, import.meta.url), 'utf8').trim();
test('heading includes the practice label', () => {
assert.equal(read('heading.txt'), 'Title: Small Steps Lab');
});
test('footer identifies practice-only material', () => {
assert.equal(read('footer.txt'), 'Footer: Practice only');
});
node --test integration.test.mjs
git add -- heading.txt footer.txt integration.test.mjs
git commit -m "Add integration exercise and acceptance cases"
git status --short
2단계: 겹치지 않는 두 결과물 배정
git worktree add -b codex/heading ../integration-heading main
git worktree add -b codex/footer ../integration-footer main
git worktree add -b codex/integration ../integration-review main
git worktree list
A는 제목 사본의 한 파일만, B는 푸터 사본의 한 파일만 지정값으로 바꿉니다. 직접 편집하거나 지원 Codex에서 전체 경로·브랜치·유일한 쓰기 파일·보고 형식을 주어 두 작업자에게 명시 위임할 수 있습니다. 참고 검증은 동등한 지정 편집이며 두 모델 실행으로 표시하지 않습니다.
Use two subagents with separate checkouts. Do not create more agents.
Agent A owns only <ABSOLUTE_HEADING_CHECKOUT>/heading.txt on codex/heading.
Set that file to 'Title: Small Steps Lab' with a final newline.
Agent B owns only <ABSOLUTE_FOOTER_CHECKOUT>/footer.txt on codex/footer.
Set that file to 'Footer: Practice only' with a final newline.
Neither agent may edit tests, merge, push, deploy or touch the other checkout.
Return the actual file diff and blockers. Leave staging and integration to the parent.
Wait for both agents before reviewing their results.
| 작업 | 쓰기 파일 | 해당 단계 시험 |
|---|---|---|
| A 제목 | heading.txt | 제목 통과·푸터 대기 |
| B 푸터 | footer.txt | 푸터 통과·제목 대기 |
| 통합자 | 검토된 조합 브랜치 | 둘을 합친 뒤 두 통과 |
시험 파일이 바뀌면 이유와 차이를 확인하고 기준을 낮추게 하지 마세요.
git -C ../integration-heading diff -- heading.txt
git -C ../integration-footer diff -- footer.txt
node --test ../integration-heading/integration.test.mjs
node --test ../integration-footer/integration.test.mjs
3단계: 커밋 후 순서대로 통합
두 작업자의 쓰기가 끝나면 전체 상태와 지정 파일만 바뀐 것을 확인해 커밋합니다. 이미 커밋됐다면 차이를 확인하고 중복 커밋하지 마세요. 두 SHA를 기록하며 실제 협업은 확인한 커밋을 쓰거나 변경을 멈춰 움직이는 대상을 검증하지 않습니다.
git -C ../integration-heading add -- heading.txt
git -C ../integration-heading commit -m "Label the practice heading"
git -C ../integration-footer add -- footer.txt
git -C ../integration-footer commit -m "Label the practice footer"
git rev-parse codex/heading codex/footer
git -C ../integration-review status --short
git -C ../integration-review merge --no-ff codex/heading -m "Integrate practice heading"
git -C ../integration-review merge --no-ff codex/footer -m "Integrate practice footer"
node --test ../integration-review/integration.test.mjs
git -C ../integration-review diff main...HEAD -- heading.txt footer.txt
통합 폴더는 두 통과, 차이는 두 새 값, 원본 main은 초기값이어야 합니다. 첫 merge가 충돌하면 두 번째는 실행하지 마세요. 개별 브랜치 통과는 조합 검증을 대신하지 않습니다. --no-ff는 교육상 기록을 남기기 위한 것이며 실제 저장소 정책은 따로 따릅니다.
git -C ../integration-review rev-parse HEAD
이 전체 SHA를 두 항목 통과와 함께 기록합니다. 다음 충돌과 abort 후 원본 폴더에서 같은 명령으로 동일 SHA, 깨끗한 상태, 두 통과를 모두 확인하세요. 제목 브랜치나 main의 SHA를 통합 SHA로 적지 마세요.
4단계: 의도적 충돌과 중지
git worktree add -b codex/conflict ../integration-conflict main
충돌 사본의 제목만 Title: Another direction으로 바꿔 커밋합니다. 이전 main의 같은 줄을 다르게 바꾸므로 통합 브랜치와 충돌합니다. 검토 폴더가 깨끗하고 두 테스트가 통과하는지 확인한 뒤 시도해 미저장 작업 대신 명확한 시작 상태로 abort하게 합니다.
git -C ../integration-conflict add -- heading.txt
git -C ../integration-conflict commit -m "Create a conflicting practice heading"
git -C ../integration-review merge --no-ff codex/conflict -m "Attempt conflicting integration"
git -C ../integration-review status --short
충돌 파일의 두 값과 Git 표식을 확인하고 이번에는 한쪽을 고르지 말고 오류·상태를 남겨 abort합니다. 두 통과와 깨끗한 상태로 돌아와야 합니다. 기존 미커밋이 있으면 완전 복구가 보장되지 않아 사전 확인이 필요합니다. 실제 해결은 구간별 동작을 선택하고 무조건 ours/theirs를 쓰지 않습니다.
git -C ../integration-review merge --abort
node --test ../integration-review/integration.test.mjs
git -C ../integration-review status --short
정리·문제·전달
테스트는 자신의 파일 URL 기준으로 읽으므로 파일이 없으면 같은 사본에 셋이 있는지 확인합니다. 알 수 없는 변경은 출처, 없는 브랜치는 생성·커밋, 병합 후 실패는 조합 차이를 보세요. 기준을 낮추거나 공통 인터페이스도 정하지 않은 의존 작업을 무리하게 독립 분담하지 않습니다.
작업자와 사본 창을 닫고 원본에서 네 전체 경로와 clean 상태를 확인합니다. 추가했고 커밋됐으며 미사용인 사본만 제거하고 거부는 force 없이 조사하세요. 원본과 통합 브랜치가 남아 결과를 읽을 수 있으며 운영 main 병합이나 PR은 없습니다.
git worktree list
git worktree remove ../integration-heading
git worktree remove ../integration-footer
git worktree remove ../integration-review
git worktree remove ../integration-conflict
git show codex/integration:heading.txt
git show codex/integration:footer.txt
입력 두 SHA·병합 순서·통합 SHA·두 테스트·충돌/abort·원본 main 보존을 기록합니다. Git/Node 참고 검사는 모델 분담이나 전체 화면 검증이 아니며 미실행 OS는 공식 문서 확인으로 표시합니다. 브라우저와 이미지브라우저, 스크린샷과 이미지 활용시각 작업에는 참고, 현재 화면과 변경 조건이 필요합니다. 스크린샷과 생성 그림은 증거의 의미가 다르며 생성 화면으로 동작 성공을 증명할 수 없습니다.전체 글 읽기로 이어가세요.
Codex 학습 목차로 돌아가기Codex 학습 센터: 전체 튜토리얼 목차설치와 첫 작업부터 MD 지침과 고급 연동까지 60개 강의, 열 개 단원을 계획합니다. 수준, 환경, 목표, 명령으로 다음 글을 찾고 미게시 항목의 상태를 확인할 수 있습니다.전체 글 읽기
자세한 설명 보기
Three numbered stages: identify the starting point, perform the exercise, and verify the result. Original illustration, not a product screenshot.
같은 주제의 글
라이프스타일
Codex 학습 센터: 전체 튜토리얼 목차
설치와 첫 작업부터 MD 지침과 고급 연동까지 60개 강의, 열 개 단원을 계획합니다. 수준, 환경, 목표, 명령으로 다음 글을 찾고 미게시 항목의 상태를 확인할 수 있습니다.
라이프스타일
Worktree와 작업 격리
Worktree는 하나의 Git 저장소에 다른 브랜치의 작업 폴더를 만듭니다. 파일이 분리되어도 DB, 포트와 외부 서비스는 공유될 수 있습니다.
라이프스타일
실습: 작은 웹사이트 만들기
brief.md에서 Small Steps 할 일 사이트를 계획하고 추가·완료·삭제·필터·로컬 저장을 구현합니다. HTML·CSS·데이터 함수·화면 이벤트·시험을 분리하고 Node와 브라우저로 검증한 뒤 재시작·복원 인계 기록을 남깁니다.
라이프스타일
사용량과 효율: 재작업 줄이기
조건, 모델 선택, 시간, 결과를 기록해 불필요한 재시도와 과도한 문맥을 줄입니다.
이 글을 인용한 글
최신 여행 소식·가이드

가이드도쿄
도쿄 어디에 묵을까? 신주쿠·우에노·도쿄역·시부야·아사쿠사·이케부쿠로·긴자 일곱 지역 비교: 공항 교통, 숙박세, 짐 배송까지
도쿄 어디에 묵을까? 신주쿠, 우에노, 도쿄역, 시부야, 아사쿠사, 이케부쿠로, 긴자 일곱 지역을 같은 기준으로 비교한다. 나리타·하네다 공항에서 오는 방법, 교통 노선, 주변의 볼거리, 동네 분위기, 적합한 여행자를 비교표와 야마노테선 안내도로 살펴보고, 2026년 9월에 확인한 도쿄도 숙박세(2027년 4월부터 3%)와 공항 택배로 짐을 보내는 규정도 정리했다.
- 예산
- 호텔

가이드도쿄
도쿄 교통패스 선택법: Suica/Welcome Suica, Tokyo Subway Ticket, JR Pass는 살 만할까?
도쿄를 처음 여행한다면 먼저 1인당 IC 카드 한 장으로 탈 때마다 결제한다(Welcome Suica는 보증금이 없고 28일간 유효). 하루에 지하철을 4번 이상 타면 2,000엔짜리 Tokyo Subway Ticket 72시간권을 추가하고, 간사이에 가지 않고 도쿄만 여행한다면 JR Pass는 반드시 손해다. TOURIST PASMO, iPhone의 Suica, 도쿄 Metro 하루권의 이용 가능·불가 범위를 결정도로 비교한다. 가격은 2026년 9월 확인.
- 교통
- 예산

가이드도쿄
도쿄 디즈니랜드·디즈니씨 가이드: 티켓 가격, 판타지 스프링스 Fantasy Springs, 디즈니 프리미어 액세스 DPA와 스탠바이 패스 이용법, 첫 방문에는 어느 파크가 좋을까
도쿄 디즈니 하루짜리 패스포트는 변동 가격제로, 2026년 9월에는 평일 대부분이 9,900엔, 주말이 10,900엔이다. 공식 홈페이지에서 매일 14:00에 두 달 뒤 같은 날짜의 티켓을 판매한다. 무료 프라이오리티 패스는 공식 서비스 목록에서 빠져 대기 시간을 줄이는 방법은 유료 디즈니 프리미어 액세스(한 사람당 한 번 1,000~3,500엔)뿐이다. 운영 시간, 25주년 행사, 스탠바이 패스, 엔트리 리퀘스트, 판타지 스프링스 이용법, 첫 방문 때 디즈니랜드와 디즈니씨 중 어디를 고를지도 담았다. 2026년 9월 공식 홈페이지에서 확인했다.
- 추천 일정
- 가족 여행
출처
- Git merge and abort · 확인일:
- Git worktree · 확인일:
- Codex worktrees · 확인일: