Contributing Changes
Getting Sources Formatting Changes Before Submitting Submitting Changes Website License |
Getting Sources
GitHub is used to store source code. The repository can be cloned with the following command:
git clone https://github.com/nginx/nginx.git
Formatting Changes
Changes should be formatted according to the code style used by nginx. Sometimes, there is no clear rule; in such cases examine how existing nginx sources are formatted and mimic this style. Changes will more likely be accepted if style corresponds to the surrounding code.
Commit the changes in your nginx GitHub fork. Please ensure that the specified e-mail address and real name of the author are correct.
The commit message should have a single-line synopsis followed by verbose
description after an empty line.
It is desirable that the first line is no longer than 67 symbols,
and the remaining lines are no longer than 76 symbols.
The resulting commit can be obtained using the
git show
command:
commit 8597218f386351d6c6cdced24af6716e19a18fc3 Author: Filipe Da Silva <username@example.com> Date: Thu May 9 10:54:28 2013 +0200 Mail: removed surplus ngx_close_connection() call. It is already called for a peer connection a few lines above. diff --git a/src/mail/ngx_mail_auth_http_module.c b/src/mail/ngx_mail_auth_http_module.c index 2e9b9f24d..8094bbc5c 100644 --- a/src/mail/ngx_mail_auth_http_module.c +++ b/src/mail/ngx_mail_auth_http_module.c @@ -699,7 +699,6 @@ ngx_mail_auth_http_process_headers(ngx_mail_session_t *s, 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;
Before Submitting
Several points are worth to consider before submitting changes:
- The proposed changes should work properly on a wide range of supported platforms.
- Try to make it clear why the suggested change is needed, and provide a use case, if possible.
-
Passing your changes through the test suite is a good way to ensure
that they do not cause a regression.
The repository with
tests can be cloned with the following command:
git clone https://github.com/nginx/nginx-tests.git
Submitting Changes
The proposed changes should be submitted from your fork to nginx repository as a pull request.
Website
GitHub is used to store the sources for this website. The repository can be cloned with the following command:
git clone https://github.com/nginx/nginx.org.git
Documentation changes should be submitted from your fork as a pull request.
License
Submitting changes implies granting project a permission to use it under an appropriate license.