贡献更改
获取源代码 格式化更改 提交前 提交更改 许可证 |
获取源代码
Mercurial 用于存储源代码。可以通过以下命令克隆代码库
hg clone http://hg.nginx.org/nginx
格式化更改
应根据 nginx 使用的代码风格格式化更改。有时,没有明确的规则;在这种情况下,检查现有 nginx 源代码的格式化方式并模仿此风格。如果样式与周围代码相对应,则更有可能接受更改。
提交更改以创建 Mercurial 更改集。请确保指定的电子邮件地址和更改作者的真实姓名正确无误。
提交消息应有一行摘要,后跟空行后的详细说明。第一行最好不超过 67 个符号。可以使用 hg export
命令将生成的更改集作为补丁获取
# HG changeset patch # User Filipe Da Silva <[email protected]> # Date 1368089668 -7200 # Thu May 09 10:54:28 2013 +0200 # Node ID 2220de0521ca2c0b664a8ea1e201ce1cb90fd7a2 # Parent 822b82191940ef309cd1e6502f94d50d811252a1 Mail: removed surplus ngx_close_connection() call. It is already called for a peer connection a few lines above. diff -r 822b82191940 -r 2220de0521ca src/mail/ngx_mail_auth_http_module.c --- a/src/mail/ngx_mail_auth_http_module.c Wed May 15 15:04:49 2013 +0400 +++ b/src/mail/ngx_mail_auth_http_module.c Thu May 09 10:54:28 2013 +0200 @@ -699,7 +699,6 @@ ngx_mail_auth_http_process_headers(ngx_m p = ngx_pnalloc(s->connection->pool, ctx->err.len); if (p == NULL) { - ngx_close_connection(ctx->peer.connection); ngx_destroy_pool(ctx->pool); ngx_mail_session_internal_server_error(s); return;
提交前
在提交更改之前,值得考虑以下几点
- 建议的更改应在广泛的受支持平台上正常工作。
- 尽量阐明建议的更改为何必要,并尽可能提供用例。
-
通过测试套件传递更改是确保更改不会导致回归的好方法。可以使用以下命令克隆包含测试的代码库
hg clone http://hg.nginx.org/nginx-tests
提交更改
建议的更改应发送至nginx 开发邮件列表。提交更改集的首选且便捷的方法是使用patchbomb扩展。
许可证
提交更改意味着授予项目一项许可,允许其在适当的许可证下使用它。