Skip to content
难度LEVEL★★★★★
阅读READ约 3 分钟~3 min
更新UPDATED2026-09

第 13 章 开源与协作 · 许可证、贡献与署名

easycode · Agent Skill

东西发布了,下一个问题自动到来,别人能拿它做什么?答案不该靠猜,该靠许可证(License),作品的使用规则书。没有许可证的公开代码处在法律灰色地带,别人看得见,却不敢用。

先认两大家族。代码世界的通行证是宽松许可,MIT 最典型,随便用,随便改,商用也行,只要保留署名。代码存在的意义就是被复制和被修改。内容世界用 CC(知识共享)家族,几个后缀拼出规则,BY 须署名,NC 禁商用,ND 禁改编。这套书用的是 CC BY-NC-ND 4.0。

我们自己的许可决策里有一课值得展开。一开始想给全站统一用 BY-NC-ND,后来拆成了双许可,散文 BY-NC-ND,代码 MIT。ND(禁改编)用在代码上是自相矛盾的,书里每个"试一试"都在邀请你复制修改代码,许可证却禁止,规则和意图打架。教训通用,许可证要匹配作品的用途,一套作品里用途不同的部分,可以分开授权。另一条要记住的性质,许可证是单向门,但方向对你有利。今天从严,明天随时可以放宽。一旦从宽,那个版本永远收不回。所以拿不准时从严开始,选择权留在自己手里。ND 会顺带挡住翻译,我们的解法是在许可页写明"翻译请来信,通常会同意",门关着,但留了门铃。

贡献这件事你其实已经会了。第二册第 7 章的 Fork,分支,PR,就是全球开源协作的标准姿势。你当时把它当工具学,它同时也是一门世界通用的协作礼仪。想接受别人的贡献,只需再补两样,一份 CONTRIBUTING(怎么参与,什么样的 PR 会被收)和一句行为准则。为什么要开源,答案和慈善无关。公开的代码被更多眼睛检验,这是安全。公开的过程积累信任,这个站的可信度全部来自"我们真的这么干"。作品本身就是你的简历,build in public,作品替你说话。

最后把署名和存证接成一对。许可证规定"用我的东西请署名",链上存证证明"这确实是我的东西、成于此时",一个立规则,一个留证据。规则加证据,一个创作者对自己作品的保护就完整了。署名格式我们定为 Charles Tao,《AI 时代的编程指南》,books.stickmancharles.com。

关键领悟

许可证匹配用途(代码宜宽,散文可严),从严开始留住选择权。PR 是世界通用的协作礼仪。署名立规则,存证留证据,两样配齐,作品才真正属于你。

试一试

检查你公开的每个仓库,有 LICENSE 吗?和你的真实意图匹配吗?给最重要的那个补上 LICENSE 和一小节"如何参与"。

由 Charles Tao 与 Claude 协作写成——这本身就是这套书讲的工作方式。Written by Charles Tao with Claude — which is itself the working method this series teaches. · 许可License