Simplified the worktree setup to use the main repository's node_modules and vendor directories directly instead of creating a separate .shared-deps directory. Changes: - Updated conductor-setup.sh to symlink directly to main repo's directories - Updated CLAUDE.md to reflect the simpler approach - Symlinks now point to ../../node_modules and ../../vendor Benefits: - Simpler setup with no extra directories - All worktrees share the main repo's dependencies - No need to add .shared-deps to .gitignore 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
28 lines
No EOL
983 B
Bash
Executable file
28 lines
No EOL
983 B
Bash
Executable file
#!/bin/bash
|
|
set -e
|
|
|
|
# Copy .env file
|
|
cp $CONDUCTOR_ROOT_PATH/.env .env
|
|
|
|
# Setup shared dependencies via symlinks to main repo
|
|
echo "Setting up shared node_modules and vendor directories..."
|
|
|
|
# Ensure main repo has the directories
|
|
mkdir -p "$CONDUCTOR_ROOT_PATH/node_modules"
|
|
mkdir -p "$CONDUCTOR_ROOT_PATH/vendor"
|
|
|
|
# Remove existing directories if they exist and are not symlinks
|
|
[ -d "node_modules" ] && [ ! -L "node_modules" ] && rm -rf node_modules
|
|
[ -d "vendor" ] && [ ! -L "vendor" ] && rm -rf vendor
|
|
|
|
# Calculate relative path from worktree to main repo
|
|
WORKTREE_PATH=$(pwd)
|
|
RELATIVE_PATH=$(python3 -c "import os.path; print(os.path.relpath('$CONDUCTOR_ROOT_PATH', '$WORKTREE_PATH'))")
|
|
|
|
# Create symlinks to main repo's node_modules and vendor
|
|
ln -sf "$RELATIVE_PATH/node_modules" node_modules
|
|
ln -sf "$RELATIVE_PATH/vendor" vendor
|
|
|
|
echo "✓ Shared dependencies linked successfully"
|
|
echo " node_modules -> $RELATIVE_PATH/node_modules"
|
|
echo " vendor -> $RELATIVE_PATH/vendor" |