name: 自动部署 on: push: branches: - master workflow_dispatch: jobs: deploy: runs-on: ubuntu-latest steps: - name: 检查分支 uses: actions/checkout@v4 with: fetch-depth: 1 persist-credentials: false # 必须为 false,防止 1.25.4 的默认 Token 干扰 SSH - name: 安装依赖与构建 run: | npm install -g hexo-cli npm install npm run build - name: 部署 (内存优化版) env: SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }} run: | # 1. 注入 SSH 密钥 mkdir -p ~/.ssh echo "$SSH_PRIVATE_KEY" > ~/.ssh/id_ed25519 chmod 600 ~/.ssh/id_ed25519 ssh-keyscan git.biss.click >> ~/.ssh/known_hosts # 2. 准备推送 cd ./public git init git config user.name "biss" git config user.email "biss@noreply.gitea.com" # 3. 针对 2H2G 的内存优化:限制 Git 的打包内存占用 git config --global pack.windowMemory "16m" git config --global pack.packSizeLimit "20m" git config --global core.packedGitLimit "32m" git add . git commit -m "Deploy: $(date)" # 4. 执行推送 (去掉 -v 防止日志过大导致内存波动) # 注意:如果端口不是 22,请确保地址包含端口号 git push --force "git@git.biss.click:biss/blog.git" master:page 2>&1