#!/usr/bin/env sh # 配置区(只改这里) GIT_REPO_URL="ssh://root@git.xieyaxin.top:8892/topuser/nuxt4-demo.git" PROD_BRANCH="deploy-branch" # 你要存放产物的分支名(会自动创建) BUILD_FOLDER=".output" # 打包产物目录 COMMIT_MSG="deploy: build at $(date +'%Y-%m-%d %H:%M:%S')" # 1. 先打包 echo "📦 构建项目..." bun run build # 2. 克隆远程产物分支到临时目录 echo "⬇️ 拉取产物分支..." git clone --single-branch --branch $PROD_BRANCH $GIT_REPO_URL .tmp_dist || { echo "🆕 分支不存在,创建新分支..." mkdir .tmp_dist cd .tmp_dist git init git checkout -b $PROD_BRANCH git remote add origin $GIT_REPO_URL cd .. } # 3. 删除旧产物,复制新产物 echo "♻️ 更新产物文件..." rm -rf .tmp_dist/* cp -r $BUILD_FOLDER/* .tmp_dist/ # 4. 提交并推送 cd .tmp_dist git add -A git commit -m "$COMMIT_MSG" echo "🚀 推送到远程分支 $PROD_BRANCH..." git push origin $PROD_BRANCH # 5. 清理临时文件 cd .. rm -rf .tmp_dist echo "✅ 发布完成!"