#!/bin/bash set -euo pipefail unset_git_hook_env() { local var while IFS= read -r var; do [ -n "$var" ] && unset "$var" done < <(git rev-parse --local-env-vars 2>/dev/null || true) } unset_git_hook_env # Test 分支 worktree 路径 WORKTREE_PATH="/Users/chase/Documents/frontend/cozsweet-frontend-nextjs.worktrees/cozsweet-nextjs-test" echo "=== 进入 test 分支 worktree ===" cd "$WORKTREE_PATH" || { echo "错误: 无法进入 $WORKTREE_PATH"; exit 1; } echo "=== 检查当前分支 ===" git branch --show-current echo "=== 合并 dev 分支 ===" git merge dev # 复制测试环境图标(source: $WORKTREE_PATH/icons/test → dest: $WORKTREE_PATH/public/) echo "=== 复制测试环境图标(icons/test → public/) ===" cp -f "$WORKTREE_PATH/icons/test/favicon.ico" "$WORKTREE_PATH/public/favicon.ico" cp -f "$WORKTREE_PATH/icons/test/icons/Icon-192.png" "$WORKTREE_PATH/public/images/icons/Icon-192.png" cp -f "$WORKTREE_PATH/icons/test/icons/Icon-512.png" "$WORKTREE_PATH/public/images/icons/Icon-512.png" # 准备测试环境变量($WORKTREE_PATH/env-example/.env.local.example → $WORKTREE_PATH/.env.local) echo "=== 准备测试环境变量(env-example/.env.local.example → .env.local) ===" cp -f "$WORKTREE_PATH/env-example/.env.local.example" "$WORKTREE_PATH/.env.local" echo "=== 执行构建部署脚本(测试环境)===" ./scripts/deploy/deploy_web_test.sh echo "=== 预发布完成 ==="