SuperAPI AI 工具集

keeping-git-repos-clean

通用与其它

查看项目

更新于 10-16 01:50

技能介绍

用途:该技能针对两类常被误提交的文件——密钥与开发产物,提供预防、检测与修复方法,并强调 Git 历史不可逆、公开仓库等于公开文件。

主要能力:

  1. 审计仓库实际跟踪内容:用 git ls-files 配合 grep 查找密钥、缓存、数据库、系统文件及异常大文件。
  2. 解除跟踪:.gitignore 不会取消已提交文件的跟踪,需用 git rm --cached 保留本地副本后加入忽略并提交。
  3. 密钥处理顺序:先轮换/撤销凭据(唯一真正保护措施),再解除跟踪,必要时用 git filter-repo 或 BFG 清理历史并强推,作为维护者人工步骤。
  4. 预防:设置全局 core.excludesFile 忽略个人噪声,使用 gitleaks、detect-secrets 的 pre-commit 钩子阻止密钥进入历史,并提供 .gitignore 模板。
  5. 验证时保持工作区干净:用 git status --short 夹住构建/测试命令,只暂存已审查路径,避免 git add -A 扫入生成文件;必要时在临时副本中运行构建。

使用方式:按审计、修复、预防三步清单执行;命令与配置示例见原文。

限制:本技能只关注 Git 跟踪内容,不负责扫描源码漏洞;历史清理会改写 SHA 并影响协作者,通常不作为自动 PR 执行。