| .gitignore | ●●●●● patch | view | raw | blame | history | |
| 00inbox/X-sessionhistory/Ob.temp/26.0901-Ob.temp.Obsidian本机维护-Git历史瘦身.md | ●●●●● patch | view | raw | blame | history | |
| 00inbox/X-sessionhistory/Ob.temp/COMMANDS.md | ●●●●● patch | view | raw | blame | history |
.gitignore
@@ -21,6 +21,11 @@ # ===== 公司素材盘(约 380GB:声纹/音频/产品资料,不进版本库)===== P3.bobo/ # ===== 本机归档备份(不进版本库)===== X2.Archived/backups/ # 任意层级中,只要目录名包含 backup(不区分大小写),整个目录均不进版本库。 **/*[Bb][Aa][Cc][Kk][Uu][Pp]*/ # ===== 大体积二进制(避免撑爆 git,notes 以 .md 为主)===== *.mp3 *.mp4 @@ -64,3 +69,9 @@ *.ppt *.xlsx *.xls # ===== Daily Activity 源码仓库边界(外置到 /Users/ar/Projects_src)===== P02-软件项目/ob-daily-activity/02-processing/daily-activity/ # ===== tagfeed 源码迁移边界(外置到 /Users/ar/Projects_src)===== P02-软件项目/ob-tagfeed/03-O/C1.source/ 00inbox/X-sessionhistory/Ob.temp/26.0901-Ob.temp.Obsidian本机维护-Git历史瘦身.md
New file @@ -0,0 +1,70 @@ # Ob.temp Git 历史瘦身执行与移交备忘 ## 目标与边界 - 只处理 Vault:`/Users/ar/Downloads/Syn/Ob/Ob.temp` - 只处理该 Vault 对应的远端:`https://git.boborobots.com/r/crazy-macs/obsidianar.git` - 不处理 `/Users/ar/Projects_src/`,也不改动任何独立软件项目仓库。 - 本机 backup 目录及两份已迁出的旧源码仍保留原位,只从 Vault Git 的当前版本和历史版本中移除。 ## 为什么要做 软件源码、依赖、构建产物、备份存档和证书类文件不适合进入 Obsidian 的全库 Git。它们会增加扫描、提交、同步和远端存储成本,也会把不该长期出现在历史中的敏感材料带入远端。 ## 最终规则 `.gitignore` 现在包含一条通用目录规则:任意层级只要**目录名**包含 `backup`(不区分大小写),整个目录都不进入 Git;普通文件名中含有 `backup` 不受影响。 另外继续忽略: - `P02-软件项目/ob-tagfeed/03-O/C1.source/` - `P02-软件项目/ob-daily-activity/02-processing/daily-activity/` ## 已从全部 Git 历史移除的路径 - `00inbox/X-sessionhistory/Taglauncher/.codex-sessionhistory/legacy/codex-20260610/session-history/local-data-backup-20260608-131414/` - `00inbox/X-sessionhistory/Taglauncher/.codex-sessionhistory/legacy/codex-20260610/session-history/root-cleanup-backup-20260608-211624/` - `X1.Knomo/_knomo-system/backups/` - `X2.Archived/backups/` - `X2.Archived/excalidraw-library/.migration-backup-20260825-230434/` - `P02-软件项目/ob-tagfeed/03-O/C1.source/` - `P02-软件项目/ob-daily-activity/02-processing/daily-activity/` 历史改写后还检查了 `.p12`、`.cer`、`.provisionprofile`、`.certSigningRequest`;新历史中数量为 0。 ## 执行结果 - 旧远端 `main`:`4039132357d16ca2f008295f033c8d2250a7fe8d` - 新远端 `main`:`2d98902a184d8cd0dff961628505dbdec341b55d` - 提交数量:8 个,全部完成历史改写。 - 标准裸仓库对象包:从约 30.46 MiB 降至约 24.52 MiB,减少约 19.5%。 - 当前版本内容等价摘要:移除批准路径后,改写前后均为 1746 个文件、44,361,997 字节,SHA-256 均为 `f31aef8aceb9dec97d1d7735ad4a82e05c3505851b25fd7a5110f7323b371463`。 - 本地 Vault 切换前后待处理文件数量均为 1002,说明原有未提交工作没有因切换 Git 元数据而丢失。 - 当前版本及全部新历史中的禁止路径数量均为 0。 - 本机上述七个目录全部仍然存在,并由忽略规则保护。 ## 安全备份与恢复点 - 完整 Vault 快照:`/Users/ar/Ob.temp-git-slim-backups/20260901-pre-rewrite` - 完整 Git bundle:`/Users/ar/Ob.temp-git-slim-backups/20260901-pre-rewrite-all.bundle` - 改写后的隔离裸仓库:`/Users/ar/Ob.temp-git-slim-backups/20260901-filtered.git` - 改写后的本地测试克隆:`/Users/ar/Ob.temp-git-slim-backups/20260901-test-clone` - 切换前的原始 `.git`:`/Users/ar/Ob.temp-git-slim-backups/20260901-original-dotgit` 在确认所有设备都已适应新历史以前,不要删除这些恢复点。 ## 以后怎么维护 1. backup 目录可正常留在 Vault 本机,但不要用强制添加把它加入 Git。 2. 软件源码统一放在 `/Users/ar/Projects_src/`,每个项目使用自己的 Git 和远端。 3. Obsidian 内只保留项目管理、需求、交接和轻量成果文档。 4. 新增大型二进制文件前,先判断它应进入独立项目仓库、备份系统还是附件存储。 5. 修改忽略规则后,先用 `git check-ignore -v 路径` 验证;不要直接删除本机目录。 ## 其他设备注意事项 本次改写了远端历史。其他已经克隆过旧仓库的设备不要直接把旧分支推回远端;最安全的做法是先保存未提交文件,再重新克隆新远端。否则旧历史可能再次被带回来。 ## 安全提醒 历史删除不能替代证书吊销或密钥轮换。旧历史曾包含证书和 `.p12` 类文件;如果其中包含仍有效的私钥或口令,应另行检查并按实际风险吊销或更换。 00inbox/X-sessionhistory/Ob.temp/COMMANDS.md
@@ -1,7 +1,43 @@ # 可复用命令索引 ## Ob.temp Git 历史瘦身与恢复 - 搜索关键词:`Git 历史瘦身`、`filter-repo`、`backup`、`Projects_src`、`force-with-lease` - 完整记录:[[26.0901-Ob.temp.Obsidian本机维护-Git历史瘦身]] - 用途:说明 Vault Git 的管理边界、被移除的历史路径、验证结果、安全备份位置、其他设备重新接入方法与恢复注意事项。 ## Tagfeed Task Board 任务地图验证与恢复 - 搜索关键词:`tagfeed 任务地图`、`hasTag`、`taskId`、`blockedBy`、`27 nodes`、`8 edges` - 完整命令:[[26.0901-Ob.temp.任务管理工作流-TaskBoard地图适配]] - 用途:验证 Task Board 的 Tagfeed 精确筛选、任务节点和依赖边;升级或异常后恢复 Task Board 配置与本地兼容补丁。 ## Obsidian Vault Git 只读状态检查 - 搜索关键词:`Obsidian Git`、`status --short`、`Commit staged`、`autoPushInterval`、`osxkeychain` - 完整命令:[[26.0831-Ob.temp.Obsidian本机维护-Git操作手册]] - 用途:只读查看 Obsidian Vault 的 Git 状态、差异、最近提交及远程地址,不执行提交或同步。 ## Daily Activity DA-QA-005 固定 SHA 隔离 QA - 搜索关键词:`DA-QA-005`、`f5a0d3c6fd925b31246af8e7f956a14a6b3e644a`、`SCH-09`、`DA-UAT-001` - 完整命令:[[26.0831-Ob.temp.DA-QA-005完整独立QA-固定SHA验收]] - 用途:从固定 commit 导出隔离源码,执行 npm 基线、构建和 QA 扩展回归;不污染生产工作树。 ## Daily Activity DA-QA-006 完整回归与长期 pending 调度风险 - 搜索关键词:`DA-QA-006`、`c5e6aed5f865588a2c944ce1e6f33e4082a38ed9`、`SCH-10`、`SingleFlight`、`DA-UAT-001` - 完整命令:[[26.0831-Ob.temp.DA-QA-006完整回归-固定SHA验收]] - 用途:从 reviewer PASS 的固定 SHA 导出隔离副本,执行原有测试、构建、完整 fixture 和 scheduler 长期 pending 回归;保留真实桌面/UI/性能/Owner UAT 的 BLOCKED 边界。 ## Daily Activity DA-QA-007 固定 SHA 独立 QA - 搜索关键词:`DA-QA-007`、`7e09109c5f6eb453145059514bb5952378ee407b`、`NO-GO`、`DA-UAT-001`、`SingleFlight` - 完整命令:[[26.0831-Ob.temp.DA-QA-007固定SHA独立QA验收]] - 用途:从 reviewer PASS 的固定 SHA 导出隔离源码,执行原有回归、独立跨代/跨 await fixture、功能路径、桌面启动、UAT rehearsal 和发布前证据边界检查。 ## Git 忽略已跟踪目录并保留本机文件 - 搜索关键词:`X2.Archived/backups`、`git rm --cached`、`check-ignore`、`解除跟踪` - 完整命令:[[26.0831-Ob.temp.Obsidian本机维护-Git排除归档备份]] - 用途:将已被 Git 跟踪的目录改为忽略范围,同时保留工作区中的本机文件,并提供提交前恢复方法。