변경 사항 기여

소스 가져오기

Mercurial은 소스 코드를 저장합니다. 이 리포지토리는 다음의 명령으로 복제할 수 있습니다.

hg clone http://hg.nginx.org/nginx

변경 사항 서식 지정

변경 사항은 nginx에서 사용하는 코드 스타일로 지정해야 합니다. 명확한 규칙이 없는 경우도 있는데, 이러한 경우에는 기존 nginx 소스가 어떤 형식으로 지정되어 있는지 확인하고 이 스타일을 모방하면 됩니다. 스타일이 주변 코드와 일치하면 변경 사항이 수락될 가능성이 큽니다.

변경 사항을 커밋하여 Mercurial changeset를 생성합니다. 변경 사항 작성자의 지정된 이메일 주소와 실명이 맞는지 확인하세요.

커밋 메시지는 시놉시스를 한 줄 작성한 다음, 빈 행을 두고 긴 설명을 작성해야 합니다. 첫 행은 기호가 67개 이내인 것이 좋습니다. 패치 형식의 changeset는 hg export 명령을 사용하여 생성할 수 있습니다.

# HG changeset patch
# User Filipe Da Silva <username@example.com>
# 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 개발 메일링 리스트로 보내야 합니다. changesets를 제출하는 편리하고 선호되는 방법은 patchbomb 확장 프로그램입니다.

라이선스

변경 사항을 제출하면 프로젝트에서 적절한 라이선스에 따라 이를 사용하도록 허가하게 됩니다.

Comments are closed.