你是不是也遇到过这种情况?辛辛苦苦做了个开源小工具,发到 GitHub 上却没人用。点进 Issues 一看,全是“怎么装?”“报错了怎么办?”——其实不是项目不行,是文档没写明白。
别把文档当作业,当成说明书来写
想一想你买了一个新路由器,包装里那张纸要是只写“连接电源,配置网络”,你能搞定吗?开源项目的文档也一样。用户不是你,他们不知道你的思路。所以第一件事就是站在新手角度写。
最基础的三件套:怎么装、怎么跑、怎么改。别搞花里胡哨的结构,就按这个顺序来。
README 是门面,别让它空荡荡
很多人写 README 就一行项目名加个 logo。正确的打开方式是:
# MyCoolTool
一个帮你自动整理下载文件夹的小工具。
## 安装
```bash
go install github.com/yourname/mycooltool@latest
```
## 快速开始
```bash
mycooltool -dir ~/Downloads
```
## 配置说明
支持通过 config.yaml 设置过滤规则,示例见 `example/config.yaml`
看到没,不用多复杂,有例子就能上手。
错误提示要具体,别让用户猜谜
有人运行报错,问“为什么跑不起来”,你回一句“看日志”其实没啥用。不如在文档里提前写好常见问题。
比如依赖没装、环境变量缺失、端口被占用……把这些写成 FAQ 小节,省得一遍遍回答。
代码注释不是写给机器看的
函数上面写个 // TODO 或者 // 处理请求 这种等于没写。换成“验证用户 token 是否过期,过期返回 401”才真正有用。
尤其关键逻辑,比如重试机制、缓存策略,简单一句说明能救后来人半条命。
更新日志别偷懒
版本从 v1.0 到 v1.5,别只写“优化性能,修复 bug”。用户升级前得知道有没有破坏性变更。
像这样写更清楚:
v1.5.0
- 新增支持压缩日志输出
- 修改配置文件格式,旧版需手动迁移字段(见 migration_guide.md)
- 修复定时任务漏执行的问题
谁看了都知道要不要升级,省时间就是省钱。
用真实场景写例子
别光说“调用 API 返回数据”,换成“如何用这个接口查上周的订单总额”,再配上参数和返回值示例,别人一眼就懂怎么用。
文档写得好,不仅能减少维护成本,还能吸引更多人参与贡献。省下的答疑时间和推广精力,可不就是实打实的省钱?”}