f455e0a4368c2e6f1622355d99ecef3c97ef1f34
[privoxy.git] / doc / webserver / developer-manual / cvs.html
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
2 "http://www.w3.org/TR/html4/loose.dtd">
3
4 <html>
5 <head>
6   <title>The CVS Repository</title>
7   <meta name="GENERATOR" content=
8   "Modular DocBook HTML Stylesheet Version 1.79">
9   <link rel="HOME" title="Privoxy Developer Manual" href="index.html">
10   <link rel="PREVIOUS" title="Introduction" href="introduction.html">
11   <link rel="NEXT" title="Documentation Guidelines" href=
12   "documentation.html">
13   <link rel="STYLESHEET" type="text/css" href="../p_doc.css">
14   <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
15 </head>
16
17 <body class="SECT1" bgcolor="#EEEEEE" text="#000000" link="#0000FF" vlink=
18 "#840084" alink="#0000FF">
19   <div class="NAVHEADER">
20     <table summary="Header navigation table" width="100%" border="0"
21     cellpadding="0" cellspacing="0">
22       <tr>
23         <th colspan="3" align="center">Privoxy Developer Manual</th>
24       </tr>
25
26       <tr>
27         <td width="10%" align="left" valign="bottom"><a href=
28         "introduction.html" accesskey="P">Prev</a></td>
29
30         <td width="80%" align="center" valign="bottom"></td>
31
32         <td width="10%" align="right" valign="bottom"><a href=
33         "documentation.html" accesskey="N">Next</a></td>
34       </tr>
35     </table>
36     <hr align="left" width="100%">
37   </div>
38
39   <div class="SECT1">
40     <h1 class="SECT1"><a name="CVS" id="CVS">2. The CVS Repository</a></h1>
41
42     <p>If you become part of the active development team, you will eventually
43     need write access to our holy grail, the CVS repository. One of the team
44     members will need to set this up for you. Please read this chapter
45     completely before accessing via CVS.</p>
46
47     <div class="SECT2">
48       <h2 class="SECT2"><a name="CVSACCESS" id="CVSACCESS">2.1. Access to
49       CVS</a></h2>
50
51       <p>The project's CVS repository is hosted on <a href=
52       "http://sourceforge.net/" target="_top">SourceForge.</a> Please refer
53       to the chapters 6 and 7 in <a href=
54       "http://sourceforge.net/docman/?group_id=1" target="_top">SF's site
55       documentation</a> for the technical access details for your operating
56       system. For historical reasons, the CVS server is called <tt class=
57       "LITERAL">ijbswa.cvs.sourceforge.net</tt>, the repository is called
58       <tt class="LITERAL">ijbswa</tt>, and the source tree module is called
59       <tt class="LITERAL">current</tt>.</p>
60     </div>
61
62     <div class="SECT2">
63       <h2 class="SECT2"><a name="CVSBRANCHES" id="CVSBRANCHES">2.2.
64       Branches</a></h2>
65
66       <p>Within the CVS repository, there are modules and branches. As
67       mentioned, the sources are in the <tt class="LITERAL">current</tt>
68       <span class="QUOTE">"module"</span>. Other modules are present for
69       platform specific issues. There is a webview of the CVS hierarchy at
70       <a href="http://ijbswa.cvs.sourceforge.net/ijbswa/" target=
71       "_top">http://ijbswa.cvs.sourceforge.net/ijbswa/</a>, which might help
72       with visualizing how these pieces fit together.</p>
73
74       <p>At one time there were two distinct branches: stable and unstable.
75       The more drastic changes were to be in the unstable branch. These
76       branches have now been merged to minimize time and effort of
77       maintaining two branches.</p>
78     </div>
79
80     <div class="SECT2">
81       <h2 class="SECT2"><a name="CVSCOMMIT" id="CVSCOMMIT">2.3. CVS Commit
82       Guidelines</a></h2>
83
84       <p>The source tree is the heart of every software project. Every effort
85       must be made to ensure that it is readable, compilable and consistent
86       at all times. We expect anyone with CVS access to strictly adhere to
87       the following guidelines:</p>
88
89       <p>Basic Guidelines, for all branches:</p>
90
91       <ul>
92         <li>
93           <p>Please don't commit even a small change without testing it
94           thoroughly first. When we're close to a public release, ask a
95           fellow developer to review your changes.</p>
96         </li>
97
98         <li>
99           <p>Your commit message should give a concise overview of
100           <span class="emphasis"><i class="EMPHASIS">what you
101           changed</i></span> (no big details) and <span class=
102           "emphasis"><i class="EMPHASIS">why you changed it</i></span> Just
103           check previous messages for good examples.</p>
104         </li>
105
106         <li>
107           <p>Don't use the same message on multiple files, unless it equally
108           applies to all those files.</p>
109         </li>
110
111         <li>
112           <p>If your changes span multiple files, and the code won't
113           recompile unless all changes are committed (e.g. when changing the
114           signature of a function), then commit all files one after another,
115           without long delays in between. If necessary, prepare the commit
116           messages in advance.</p>
117         </li>
118
119         <li>
120           <p>Before changing things on CVS, make sure that your changes are
121           in line with the team's general consensus on what should be
122           done.</p>
123         </li>
124
125         <li>
126           <p>Note that near a major public release, we get more cautious.
127           There is always the possibility to submit a patch to the <a href=
128           "http://sourceforge.net/tracker/?atid=311118&amp;group_id=11118&amp;func=browse"
129           target="_top">patch tracker</a> instead.</p>
130         </li>
131       </ul>
132     </div>
133   </div>
134
135   <div class="NAVFOOTER">
136     <hr align="left" width="100%">
137
138     <table summary="Footer navigation table" width="100%" border="0"
139     cellpadding="0" cellspacing="0">
140       <tr>
141         <td width="33%" align="left" valign="top"><a href="introduction.html"
142         accesskey="P">Prev</a></td>
143
144         <td width="34%" align="center" valign="top"><a href="index.html"
145         accesskey="H">Home</a></td>
146
147         <td width="33%" align="right" valign="top"><a href=
148         "documentation.html" accesskey="N">Next</a></td>
149       </tr>
150
151       <tr>
152         <td width="33%" align="left" valign="top">Introduction</td>
153
154         <td width="34%" align="center" valign="top">&nbsp;</td>
155
156         <td width="33%" align="right" valign="top">Documentation
157         Guidelines</td>
158       </tr>
159     </table>
160   </div>
161 </body>
162 </html>