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