MOSN 基于 Apache 2.0 许可发布,遵循标准的 Github 开发流程,使用 Github Issue 跟踪问题并将 Pull Request 合并到 master 分支中。本文档可以帮助你了解如何参与贡献。
在提交 Pull Request 之前您需要先签署贡献者许可协议(CLA)。虽然签署 CLA 不会给您授予主存储库的提交权利,但这意味着我们可以接受您的贡献,签署 CLA 后您将成为本项目的荣誉作者。对于活跃的贡献者甚至可以加入我们的核心团队,并具有合并 Pull Request 的权限。
为了能更高效的推进 PR 的合并,我们有一些推荐的做法,希望能有所帮助。
commit log 推荐以一个单词开头,比如下面的这些:
开头单词之后,是简要介绍一下改动的内容,比如新增了什么功能,如果是 bugfix 的话,还需要说明 bug 复现的条件,以及危害。 比如:
bugfix: got the wrong CACert filename when converting the listen filter from istio LDS, mosn may not listen success then.
如果比较复杂,一句话写不清楚的话,也可以写多行,commit log 不用怕太长。
如果英文不容易写清楚,在 PR comment 里用中文描述清楚也可以的。
以下对于 Pull Request 的要求并非强制,但是会对您提交 Pull Request 有帮助。
goimports -w yourfile.go
或者 golint yourfile.go
格式化代码.go
文件都具有简单的 doc 类注释,其中至少包含一个 author
标记标识您,并且最好至少包含一个有关该类用途的段落。.go
文件(可以从项目中的现有文件复制).go
文件的作者(不仅仅是外观更改)。MOSN 的版本包含三位数,格式为 x.x.x,第一位是出于兼容性考虑; 第二个是新功能和增强功能; 最后一位是错误修复。
项目维护者审查代码时建议遵循以下策略:
合并的时候:
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。