Files
ai-workflow-course/modules/07-worktrees-running-agents-in-parallel/lab/setup-worktrees.sh
T
claude ad5d0e841c fix(running-example): consistent lab-script paths, tasks.json policy, no command collisions
- Lab-script path convention: course scripts live in modules/NN/lab/; copy the
  one a step needs into tasks-app, then run by bare name (M4/M6/M7/M26 + headers).
- tasks.json stays gitignored: M20 verifies via `cli.py list`/`cat tasks.json`
  (not git diff) and frames runtime state as deliberately ignored; M22 cleanup
  uses `rm tasks.json`; M10 review-lab gets its own .gitignore.
  Module 21's lab deliberately ships NO .gitignore (teaching device) — untouched.
- Stop running-example command collisions: M5 clear->search, M6 count/clear->
  stats/purge, M7 clear/count->wipe/remaining (README + scripts + agent prompts +
  branch/worktree names). M6 conflict still reproduces on the carried usage line.

Closes #7
Closes #10
Closes #11

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TfzV5QvtPDz8LJS3Pu5VLT
2026-06-22 15:35:40 -04:00

27 lines
1.0 KiB
Bash

#!/usr/bin/env bash
#
# Module 7 lab — create two linked worktrees off the tasks-app repo, each on its own branch.
# Copy this into your tasks-app repo (the one you git-init'd in Module 2), then run it from inside:
#
# cp /path/to/modules/07-worktrees-running-agents-in-parallel/lab/setup-worktrees.sh .
# bash setup-worktrees.sh
#
# It places the new worktree folders next to the repo, so you end up with:
#
# <parent>/tasks-app (your existing repo, on its current branch)
# <parent>/tasks-app-wipe (new worktree on branch feature/wipe)
# <parent>/tasks-app-remaining (new worktree on branch feature/remaining)
#
set -euo pipefail
# The directory that contains the repo, so the new worktrees become siblings of it.
ROOT="$(git rev-parse --show-toplevel)"
PARENT="$(cd "$ROOT/.." && pwd)"
git worktree add "$PARENT/tasks-app-wipe" -b feature/wipe
git worktree add "$PARENT/tasks-app-remaining" -b feature/remaining
echo
echo "Worktrees created. One repo, three checked-out branches:"
git worktree list