一份好的贡献文档长什么样
你在 GitHub 上翻过几个开源项目,点进 CONTRIBUTING.md 文件,结果看到的是一段英文模板,连项目名都没改。或者更糟——压根没有这个文件。你试了几次提交代码,CI 报错,提示信息像谜语,最后干脆放弃。
这种情况太常见了。很多人觉得开源就是把代码扔出去,等着别人来修 Bug。可现实是,没人愿意在一个门槛高、指引模糊的项目里折腾。写清楚怎么参与,反而能降低摩擦,让更多人愿意动手。
从“我”开始写起
别一上来就写“开发者需遵循代码规范”,换成“如果你第一次来,可以这样开始”:
# 克隆项目
git clone https://github.com/yourname/project.git
cd project
# 安装依赖
npm install
# 启动本地服务
npm run dev就像带朋友进自家厨房,得先告诉他锅在哪、火怎么开。命令一行行列出来,别省略看似“显而易见”的步骤。有人用的是 Windows,有人刚装完 Node 还不知道 npm 是啥。
明确问题该往哪提
有人把功能建议发到 Issues,有人直接在 PR 里讨论设计。混乱的沟通会拖慢进度。在文档里写清楚:
- 发现 Bug?请在 Issues 里新建,附上版本号和复现步骤
- 想加新功能?先提个 Issue 讨论,别闷头写完再提交
- 翻译或文档修改?可以直接提 PR,不用提前打招呼
分类说明,等于给人一个路线图。就像快递分拣,贴对标签才能送到对的人手里。
PR 怎么交才不被晾着
很多人提了 PR 却石沉大海,其实维护者可能根本没法跑通你的修改。加上这几条能省不少事:
确保你的提交包含:
- 清晰的 commit 信息(比如“fix: 登录页按钮错位”而不是“update file”)
- 相关测试已通过(如果项目有测的话)
- 如果有界面变动,附一张截图
顺便提一句:如果项目用了 husky 或 lint-staged,也写进去。不然人家格式化都没过,CI 直接红了,还得来回改。
别忘了写“谢了”
在文档末尾加一段感谢的话,比如:“无论你是提了个错别字还是重构了核心模块,我们都谢谢你花时间参与。”
开源是人的事。代码重要,但让参与者感到被接纳更重要。一句简单的感谢,可能就是别人第二次提交的推动力。