网站开发的 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 page
  • fix: correct mobile menu z-index issue
  • perf: 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/

最佳实践总结

  1. 频繁提交,尽早提交 — 每次提交聚焦一个逻辑变更
  2. 编写有意义的提交信息 — 让队友和未来的你能理解变更意图
  3. 不要直接 push 到 main — 使用分支 + PR/MR 模式
  4. 在 PR 中描述变更 — 包括背景、变更内容和测试方式
  5. 保持分支生命周期短 — 分支存在时间越长,合并冲突越多
  6. Code Review — 即使单人项目,PR 自审也能发现低级错误

16IDC 观察

对于个人网站项目,Git 的价值体现在「历史追溯」和「安全回滚」上。即使你是唯一开发者,Git 的提交历史也是你调试问题时最可靠的参考资料。建议从第一个文件开始就用 Git 管理项目。