diff --git a/.github/workflows/deploy-public.yml b/.github/workflows/deploy-public.yml index 888a4be..d1e837c 100644 --- a/.github/workflows/deploy-public.yml +++ b/.github/workflows/deploy-public.yml @@ -89,17 +89,22 @@ jobs: git commit -m "Initial public branch from main ${COMMIT_HASH}" git push origin public else - # 保存构建产物到临时目录 - mv public temp_public + # 1. 确保临时目录存在 + mkdir -p temp_public - # 更新现有 public 分支 + # 2. 保存构建产物 + cp -r public/* temp_public/ + + # 3. 切换分支 git fetch origin public git checkout public git reset --soft origin/public - # 清理并复制文件 - rm -rf ./* - mv temp_public/* . + # 4. 清理当前目录(保留 .git) + find . -mindepth 1 -maxdepth 1 ! -name '.git' -exec rm -rf {} + + + # 5. 恢复构建产物 + cp -r temp_public/* . rm -rf temp_public git add .