技术笔记怎么写,才不会被自己扔掉
我手机和电脑里存过将近两千条「以后会用到」的东西。今年五月整理时发现,真正回看过的不到三十条。问题不在数量,是我记的方式让它们在半年后变成了没用的文字。这篇记下换了哪种写法之后,笔记才重新被用到。
三种注定失败的写法
一、只收藏链接
链接是我存得最多、用得最少的一类。当时觉得「这篇讲得全,存下来」,半年后既不记得它讲什么,也不记得自己为什么存它。更麻烦的是原页面会改版或消失,我存的几个小站已经有二十多个打不开。链接里不含我将来会问的问题,它只是「我当时觉得有用」的证据。
二、照抄官方文档
我抄过完整的配置项表格,二十几行,抄完很有成就感。缺点是文档按功能组织,我却按问题找回:半年后遇到的是一个具体问题,抄下来的内容里全是和它无关的选项。抄文档存的是别人的目录结构,不是我脑子里的检索路径。
三、只有代码片段,没有环境说明
这种最坑自己。我有一条命令存了两年没打开,最近终于要用,跑起来直接报「无法解析参数」——当时在 Git Bash 里跑的,现在这台机器只有 cmd,引号规则完全不同。片段丢了环境就丢了可复现性:版本、系统、配置缺一样,半年后那段代码就是猜谜。
现在固定的四段结构
我把每条笔记压成固定四段:
- 问题现象:发生了什么,报错原文逐字粘贴,不要转述。
- 复现环境:系统、工具版本、关键配置,三行以内。
- 尝试过什么:试了哪些、结果怎样、为什么不行。
- 最终做法和原因:怎么修好的,它为什么有效。
第三段最值钱,也最容易省。「尝试过什么」记的是已经排除掉的可能性,而半年后重来一遍时,最大的浪费恰恰是把排除过的路再走一次。我的判断标准很直接:一段内容如果不会让我下次少走一步,就不该进笔记。同理报错原文要逐字存,将来我是靠那几个英文单词去搜的,改成自己的话就搜不中。
标题写成「当时我会去搜的那个词」
笔记标题我不再写漂亮的总结,改成写我下次会打进搜索框的那句话。对比两种写法:
- 不用:Ripgrep 的过滤机制说明——很准,但我半年后不会搜「过滤机制」。
- 在用:rg 搜不到明明存在的文本,是 .gitignore 把目录排除了。
读的人只有我自己,所以标题不需要通顺,只需要和那天的困惑对得上。
模板,和一个填好的例子
模板我放在剪贴板的固定条目里,新建笔记就粘一次:
# 标题:现象 + 原因,用我会去搜的那个词
## 问题现象
(报错原文粘在这里,不要转述)
## 复现环境
(系统 / 工具版本 / 相关配置)
## 尝试过什么
- 试法一:结果是什么,为什么不算解决
## 最终做法和原因
(命令 + 一句话说清它为什么有效)
下面这条是我七月的真实笔记,原样搬过来:
# rg 搜不到明明存在的文本,是 .gitignore 排除了目录
## 问题现象
仓库根执行 rg "ICP备案号" .,一条结果都没有;
可这份文本确实在 backup/2026-05-web/archive.html 里。
## 复现环境
Windows 11 + Git Bash;ripgrep 14.1;.gitignore 里有一行 backup/。
## 尝试过什么
- 加 -i 怀疑大小写:没变化,排除。
- 加 --debug 重跑:日志里有 skip 记录,方向对了。
## 最终做法和原因
rg -n --no-ignore "ICP备案号" .
ripgrep 默认尊重 .gitignore 并跳过隐藏目录,
被忽略的目录根本不在搜索范围里。
这条后来救过我一次:两个月后我差点又以为「搜不到就是没有」,翻到它才想起默认过滤,省了半小时。
存法:一个目录加一条命令
我不再折腾分类和标签,那些是给别人的知识库用的。现在所有笔记放一个目录,文件名带日期前缀,靠全文搜索找回:
# 日期前缀只为排序,不表达分类
notes/
2026-05-03-css-comment-syntax.md
2026-07-14-rg-gitignore-exclude.md
# 找回靠一条命令
rg -n -i "gitignore|搜索范围" notes
为什么不分类?分类的前提是我现在就知道将来会在哪个类目下找它,而这件事我从没猜对过。全文搜索的代价只是多几行结果,错分类的代价是我根本不会去那个目录看。
小结
把收藏当记录、把文档当笔记、把片段当答案,是我扔掉自己笔记的三个原因。现在的写法只有一条原则:只留下能让我下次少走一步的内容——报错原文、环境版本、排除掉的尝试,以及它为什么有效。至于存在哪儿、怎么分类,反而最不重要。
这篇本身也是照四段写的:现象是存了两千条没看,尝试过的是分类和抄文档,最终做法就是上面那四段。