网站开发的 Git 工作流:从单人项目到团队协作的最佳实践
Git 是现代网站开发的必备工具。无论你是单人维护个人博客,还是在团队中协作开发 SaaS 产品,合理的工作流都能让开发过程更加顺畅。
单人项目的 Git 工作流
对于个人网站或小项目,简洁的流程最为有效。
推荐模式:GitHub Flow
# 1. 创建功能分支
git checkout -b feature/new-homepage
# 2. 在分支上开发,频繁提交
git add .
git commit -m "feat: redesign homepage hero section"
# 3. 提交到远程
git push origin feature/new-homepage
# 4. 在 GitHub 上创建 Pull Request
# 5. 自我审查后合并到 main
git checkout main
git merge feature/new-homepage
提交信息规范
使用 Conventional Commits 规范让提交历史更清晰:
feat: 新增功能
fix: 修复 bug
docs: 文档变更
style: 代码格式(不影响功能)
refactor: 代码重构
perf: 性能优化
test: 测试相关
chore: 构建过程或辅助工具变更
示例:
feat: add user login pagefix: correct mobile menu z-index issueperf: optimize image loading with lazy loading
团队协作的工作流
Git Flow(适合版本发布节奏的项目)
main ────────●─────────────●───────── (稳定发布版本)
\ /
develop ──────●───●──●──────●─── (日常开发分支)
\ / \
feature/login ●──● feature/payment
分支命名规范
feature/xxx — 新功能
fix/xxx — Bug 修复
hotfix/xxx — 紧急修复(直接合并到 main)
release/xxx — 发布准备
.gitignore 配置
# Node
node_modules/
npm-debug.log*
.env
# Build output
dist/
build/
.next/
# IDE
.vscode/
.idea/
*.swp
*.swo
# OS
.DS_Store
Thumbs.db
CI/CD 集成
GitHub Actions 示例
# .github/workflows/deploy.yml
name: Deploy to Production
on:
push:
branches: [main]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install dependencies
run: npm ci
- name: Run tests
run: npm test
- name: Build
run: npm run build
- name: Deploy to server
uses: easingthemes/ssh-deploy@main
with:
SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }}
SOURCE: "dist/"
REMOTE_HOST: ${{ secrets.DEPLOY_HOST }}
REMOTE_USER: ${{ secrets.DEPLOY_USER }}
TARGET: /var/www/example.com/
最佳实践总结
- 频繁提交,尽早提交 — 每次提交聚焦一个逻辑变更
- 编写有意义的提交信息 — 让队友和未来的你能理解变更意图
- 不要直接 push 到 main — 使用分支 + PR/MR 模式
- 在 PR 中描述变更 — 包括背景、变更内容和测试方式
- 保持分支生命周期短 — 分支存在时间越长,合并冲突越多
- Code Review — 即使单人项目,PR 自审也能发现低级错误
16IDC 观察
对于个人网站项目,Git 的价值体现在「历史追溯」和「安全回滚」上。即使你是唯一开发者,Git 的提交历史也是你调试问题时最可靠的参考资料。建议从第一个文件开始就用 Git 管理项目。