前端 CI/CD 实战
自动化部署让每次提交都能自动测试、构建、上线,是团队效率的倍增器。
GitHub Actions 示例
name: Deploy
on:
push:
branches: [main]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v3
with: { version: 9 }
- uses: actions/setup-node@v4
with:
node-version: 22
cache: pnpm
- run: pnpm install --frozen-lockfile
- run: pnpm lint
- run: pnpm test
- run: pnpm build
- name: Deploy
run: |
rsync -avz dist/ user@server:/var/www/app/
关键实践
- 缓存依赖:cache: pnpm 让安装从 60s 降到 5s
- --frozen-lockfile:CI 中锁定依赖版本,避免意外
- 分支策略:main 自动部署生产,PR 部署预览环境
- 失败快速反馈:lint/test 放在 build 前面,早失败早发现
自动化部署一次配置,长期受益。