PRE_COMMIT_CHECKLIST.md 2.9 KB

代码提交前检查清单

✅ 已完成检查项

1. .gitignore 配置

  • ✅ Python 缓存文件 (__pycache__/, *.pyc)
  • ✅ 日志文件 (logs/, *.log)
  • ✅ 构建产物 (dist/, build/, out/)
  • ✅ 依赖文件 (node_modules/, package-lock.json)
  • ✅ 环境变量文件 (.env, *.env)
  • ✅ SSL 证书私钥 (*.key, *.crt, *.pem)
  • ✅ 临时文件 (*.tmp, *.cache)
  • ✅ 输出文件 (outputs/, *.wav, *.mp3, *.mp4)

2. 敏感信息检查

  • ⚠️ 需要检查: configs/agents/difyAgent.yaml 中包含示例 API key 和默认值
    • 位置: 第 18 行 (api_server), 第 26 行 (api_key), 第 34 行 (username)
    • 建议: 确认这些是否为示例值,如果是真实密钥需要移除

3. 项目结构清理

  • ✅ 已删除未使用的 web/web 文件夹(包含未使用的 TensorFlow.js 依赖)
  • ✅ 检查了项目结构,无明显的冗余文件

4. 配置文件

  • ✅ 配置文件模板完整 (configs/config_template.yaml)
  • ✅ 所有引擎和 Agent 配置文件存在
  • ✅ 配置文件中的 API key 字段均为空字符串(安全)

⚠️ 需要手动检查项

1. 敏感信息清理

检查以下文件是否包含真实的 API 密钥或密码:

  • configs/agents/difyAgent.yaml - 包含示例 API key
  • docker-compose.yaml - 使用环境变量 ${DASHSCOPE_API_KEY}(安全)
  • 所有 configs/ 目录下的 YAML 文件

2. 临时文件清理

确认以下目录/文件是否需要提交:

  • logs/ - 应该被 .gitignore 忽略
  • __pycache__/ - 应该被 .gitignore 忽略
  • images.rar - 检查是否需要提交(如果是资源文件可能需要)

3. 构建产物

确认以下目录不应提交:

  • web/dist/ - Next.js 构建产物
  • meet/dist/ - Next.js 构建产物
  • web/android/app/build/ - Android 构建产物

4. 证书文件

  • scripts/certs/*.crtscripts/certs/*.key - 应该被忽略(已在 .gitignore 中)

📝 建议操作

  1. 清理敏感信息

    # 检查是否有真实的 API key 被提交
    git grep -i "api.*key\|password\|secret" -- configs/
    
    1. 确认 .gitignore 生效

      # 检查是否有应该被忽略的文件被跟踪
      git status --ignored
      
  2. 检查大文件

    # 查找可能不应该提交的大文件
    find . -type f -size +10M -not -path "./.git/*" -not -path "./node_modules/*"
    
    1. 验证配置文件
    2. 确认所有配置文件中的敏感字段都是空值或示例值
    3. 确认 config.yaml 文件在 .gitignore 中(本地配置文件不应提交)

    🚀 提交前最后检查

    • 运行 git status 确认没有意外添加的文件
    • 运行 git diff 检查所有更改
    • 确认没有硬编码的 API 密钥或密码
    • 确认所有构建产物和临时文件都被忽略
    • 确认日志文件不会被提交
    • 确认证书私钥不会被提交