comparison xml/ru/docs/contributing_changes.xml @ 912:7bee6f82db95

Actually added new files for the "Contributing Changes" article.
author Vladimir Homutov <vl@nginx.com>
date Wed, 22 May 2013 18:47:31 +0400
parents
children b568f0c47599
comparison
equal deleted inserted replaced
911:a5e982a394df 912:7bee6f82db95
1 <?xml version="1.0"?>
2
3 <!--
4 Copyright (C) Nginx, Inc.
5 -->
6
7 <!DOCTYPE article SYSTEM "../../../dtd/article.dtd">
8
9 <article name="Внесение изменений"
10 link="/ru/docs/contributing_changes.html"
11 lang="ru"
12 rev="1">
13
14 <section id="getting_sources" name="Получение исходного кода">
15
16 <para>
17 nginx использует <link url="http://mercurial.selenic.com">Mercurial</link>
18 для хранения исходного кода.
19 <link url="http://hg.nginx.org/nginx">Репозиторий</link> можно клонировать
20 следующей командой:
21 <programlisting>
22 hg clone http://hg.nginx.org/nginx
23 </programlisting>
24 </para>
25
26 </section>
27
28
29 <section id="formatting_changes" name="Оформление изменений">
30
31 <para>
32 Изменения должны быть оформлены согласно принятому в nginx стилю.
33 Оформление не должно зависеть от таких возможностей редактора как подсветка
34 синтаксиса или автоматический перенос строк.
35 Ниже приведены несколько основных правил:
36 <list type="bullet">
37
38 <listitem>
39 максимальная ширина текста — 80 символов
40 </listitem>
41
42 <listitem>
43 отступ — 4 пробела
44 </listitem>
45
46 <listitem>
47 табуляция не используется
48 </listitem>
49
50 <listitem>
51 логические блоки кода в файле разделяются двумя пустыми строками
52 </listitem>
53
54 </list>
55 Изучите, как оформлен исходный код nginx, и следуйте этому стилю в своём коде.
56 Изменения скорее будут приняты, если их стиль соответствует окружающему коду.
57 </para>
58
59 <para>
60 Зафиксируйте изменения, чтобы создать
61 <link url="http://mercurial.selenic.com/wiki/ChangeSet">набор изменений</link>
62 в Mercurial.
63 Пожалуйста, убедитесь, что адрес
64 <link url="http://mercurial.selenic.com/wiki/QuickStart#Setting_a_username">электронной
65 почты</link> и настоящее имя автора изменения указаны правильно.
66 </para>
67
68 <para>
69 Сообщение фиксации должно содержать однострочное резюме и подробное описание
70 после пустой строки.
71 Желательно, чтобы первая строка была не длиннее 67 символов.
72 Итоговый набор изменений в виде патча может быть получен с помощью команды
73 <literal>hg export</literal>:
74 <programlisting>
75 # HG changeset patch
76 # User Filipe Da Silva &lt;username@example.com>
77 # Date 1368089668 -7200
78 # Thu May 09 10:54:28 2013 +0200
79 # Node ID 2220de0521ca2c0b664a8ea1e201ce1cb90fd7a2
80 # Parent 822b82191940ef309cd1e6502f94d50d811252a1
81 Mail: removed surplus ngx_close_connection() call.
82
83 It is already called for a peer connection a few lines above.
84
85 diff -r 822b82191940 -r 2220de0521ca src/mail/ngx_mail_auth_http_module.c
86 --- a/src/mail/ngx_mail_auth_http_module.c Wed May 15 15:04:49 2013 +0400
87 +++ b/src/mail/ngx_mail_auth_http_module.c Thu May 09 10:54:28 2013 +0200
88 @@ -699,7 +699,6 @@ ngx_mail_auth_http_process_headers(ngx_m
89
90 p = ngx_pnalloc(s->connection->pool, ctx->err.len);
91 if (p == NULL) {
92 - ngx_close_connection(ctx->peer.connection);
93 ngx_destroy_pool(ctx->pool);
94 ngx_mail_session_internal_server_error(s);
95 return;
96 </programlisting>
97 </para>
98
99 </section>
100
101
102 <section id="before_submitting" name="Перед отправкой">
103
104 <para>
105 Несколько моментов, на которые следует обратить внимание перед
106 отправкой изменения:
107 <list type="bullet">
108
109 <listitem>
110 Предлагаемые изменения должны корректно работать на всех
111 <link doc="../index.xml" id="tested_os_and_platforms">поддерживаемых
112 платформах</link>.
113 </listitem>
114
115 <listitem>
116 Постарайтесь разъяснить, почему предлагаемое изменение нужно, и, если возможно,
117 опишите вариант использования.
118 </listitem>
119
120 </list>
121 </para>
122
123 </section>
124
125
126 <section id="submitting_changes" name="Отправка изменений">
127
128 <para>
129 Предлагаемые изменения следует отправить в список рассылки для
130 <link doc="../support.xml" id="nginx_devel">разработчиков nginx</link>.
131 Предпочитаемый и удобный метод отправки наборов изменений —
132 при помощи расширения
133 <link url="http://mercurial.selenic.com/wiki/PatchbombExtension">patchbomb</link>.
134 </para>
135
136 </section>
137
138
139 <section id="license" name="Лицензия">
140
141 <para>
142 Отправка изменений подразумевает предоставление проекту права на их
143 использование под соответствующей <link url="../../LICENSE">лицензией</link>.
144 </para>
145
146 </section>
147
148 </article>