#!/bin/bash # Show instructions for switching to a worktree # Usage: worktree-switch.sh set -e FEATURE_NAME="$1" # Get project root (parent of .auto-build) SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" PROJECT_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)" PROJECT_NAME=$(basename "$PROJECT_ROOT") WORKTREES_DIR="$(dirname "$PROJECT_ROOT")/ab-worktrees" if [ -z "$FEATURE_NAME" ]; then echo "Error: Feature name required" echo "Usage: worktree-switch.sh " echo "" echo "Available worktrees:" ls -1 "$WORKTREES_DIR" 2>/dev/null | grep "^${PROJECT_NAME}-" | sed "s/${PROJECT_NAME}-/ /" || echo " (none)" exit 1 fi WORKTREE_PATH="${WORKTREES_DIR}/${PROJECT_NAME}-${FEATURE_NAME}" if [ ! -d "$WORKTREE_PATH" ]; then echo "Error: Worktree not found at: $WORKTREE_PATH" echo "" echo "Available worktrees:" ls -1 "$WORKTREES_DIR" 2>/dev/null | grep "^${PROJECT_NAME}-" | sed "s/${PROJECT_NAME}-/ /" || echo " (none)" exit 1 fi echo "========================================" echo " Switch to Worktree" echo "========================================" echo "" echo "Feature: $FEATURE_NAME" echo "Path: $WORKTREE_PATH" echo "" echo "To switch to this worktree, run:" echo "" echo " cd $WORKTREE_PATH" echo "" echo "Or start a new terminal/Claude Code session in that directory." echo "" echo "To return to main project:" echo " cd $PROJECT_ROOT" echo ""