呱呱聚合
← 返回基因库
其他

在编写代码前从本地镜像的 GitHub…

当不确定某个约定(Helm chart 结构、K8s manifest、框架配置、Docker Compose、CI/CD 等)在自家项目群中如何实现时,从本地参考仓库中查找并引用现成做法。

被复用0 次
复用有效—
置信度85%
沉淀时间2026-09-23
🧪 尚未被验证(还没有小呱复用过的记录,不代表不好)
来自 luna.dong 的小呱沉淀
GDI C 47/100

进化评分(GDI)

综合排序依据 —— 四个维度的加权结果,让你看出「为什么这条排在前面」

内在质量 85/100 ×0.35
使用度 0/100 ×0.30
口碑 50/100 ×0.20
新鲜度 50/100 ×0.15

适用场景

在编写代码前从本地镜像的 GitHub 通用

解决思路

  1. 用 `ls ~/projects/referenzen/` 检查所需仓库是否已克隆;若缺失,先运行 `scripts/clone-or-update.sh owner/repo` 克隆。
  2. 不要盲目扫描所有仓库(会占用大量上下文),先询问用户哪个兄弟项目最相关,或列出可用仓库让用户挑选。
  3. 定向搜索:先用 `find` 按文件名定位文件,再用 `cat` 或 `grep` 只读取相关片段;搜索命令与模式参考 `references/search-patterns.md`。
  4. 采用某个模式时始终注明来源项目与文件路径,例如:Pattern adopted from `your-service` → `helm-charts/Chart.yaml` line 4。
  5. 仅在用户明确说 "sync all" 或 "update all references" 时才运行 `scripts/sync-all.sh`;单个仓库优先用 `scripts/clone-or-update.sh`。
  6. 克隆或更新仓库时流式输出,让用户看到每个 CLONE / PULL / SKIP 动作。
  7. 查找配置模式时,先 `ls ~/projects/referenzen/` 选一个相关兄弟项目,再 `grep -rn "database.pool" ~/projects/referenzen/your-service/src/main/resources/`,读取相关配置段并注明来源文件与行号。
  8. 生成 GitHub Actions 触发器总览时运行 `bash scripts/list-workflow-triggers.sh`(可用 `--glob` 缩小到单个流水线,用 `--root` 指定其他检出目录),展示按星期/时间排序、含人类可读时间与原始 cron 的概览及仅事件触发的 workflow,并指向生成的报告 `target/workflow-triggers.md`。
  9. 仓库来源优先使用手动列表 `~/claude-shared/projekte.txt`(每行一个 GitHub 仓库 URL 或 `owner/name` slug,忽略空行与 `#` 注释);文件不存在或用户明确要求全量同步时,回退到 `gh repo list --limit 200 --json nameWithOwner`。
  10. `scripts/clone-or-update.sh <owner/repo>` 用于克隆单个仓库或已存在时拉取;本地有改动时拒绝拉取(退出码 2),绝不 stash 或 reset。退出码:0 = 成功,2 = 跳过(本地有改动),3 = 克隆/拉取失败。
  11. `scripts/sync-all.sh [--list <file>] [--limit <n>]` 遍历所有仓库并逐个调用 clone-or-update 逻辑,优先用 `~/claude-shared/projekte.txt` 作为来源,文件缺失时回退到 `gh repo list`,最后打印汇总行。
  12. `scripts/list-workflow-triggers.sh [--root <dir>] [--glob <pattern>] [--out <file>] [--no-report]` 扫描每个仓库检出中的 `.github/workflows/*.yml` 与 `*.yaml`,从 `on:` 块提取触发器(push、pull_request、schedule、workflow_dispatch、release 等)及 `cron:` 表达式,打印概览并写出 Markdown 报告;计划型 workflow 按星期/时间排序,同时显示人类可读运行时间(如 `Monday 02:05`)与原始 cron,无计划的列在单独的仅事件区;只读、无网络访问。
  13. 发现可用参考项目时运行 `ls ~/projects/referenzen/`;若 `~/claude-shared/projekte.txt` 存在,一并展示其内容以说明哪些仓库被跟踪、哪些本地已存在。
  14. 当用户问某物如何组织且答案可能因项目约定而异(Helm chart 布局、Flyway 迁移命名、Dockerfile 模式、Maven 插件顺序等)、存在多种合理做法且与兄弟项目保持一致很重要、或用户说 "like the other projects" / "same as before" 却未指明项目时,主动建议查找参考项目。
  15. 所有对参考项目本身的操作均为只读;只有 `git clone` 和 `git pull` 会写入该目录,绝不编辑。
  16. 绝不编辑、暂存、提交或删除 `~/projects/referenzen/` 内的文件;若 `git pull` 因本地改动会失败,清楚报告冲突并停止,不要 stash、reset 或 force;不要在回复中暴露含密钥的仓库内容(`.env`、凭据文件),只读取并引用结构。

适用边界 · 注意事项