1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
2 "http://www.w3.org/TR/html4/loose.dtd">
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=
13 <link rel="STYLESHEET" type="text/css" href="../p_doc.css">
14 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
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">
23 <th colspan="3" align="center">Privoxy Developer Manual</th>
27 <td width="10%" align="left" valign="bottom"><a href=
28 "introduction.html" accesskey="P">Prev</a></td>
30 <td width="80%" align="center" valign="bottom"></td>
32 <td width="10%" align="right" valign="bottom"><a href=
33 "documentation.html" accesskey="N">Next</a></td>
36 <hr align="left" width="100%">
40 <h1 class="SECT1"><a name="CVS" id="CVS">2. The CVS Repository</a></h1>
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>
48 <h2 class="SECT2"><a name="CVSACCESS" id="CVSACCESS">2.1. Access to
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>
63 <h2 class="SECT2"><a name="CVSBRANCHES" id="CVSBRANCHES">2.2.
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>
74 <p>Branches are used to fork a sub-development path from the main
75 trunk. Within the <tt class="LITERAL">current</tt> module where the
76 sources are, there is always at least one <span class=
77 "QUOTE">"branch"</span> from the main trunk devoted to a stable release
78 series. The main trunk is where active development takes place for the
79 next stable series (e.g. 3.2.x). So just prior to each stable series
80 (e.g. 3.0.x), a branch is created just for stable series releases (e.g.
81 3.0.0 -> 3.0.1 -> 3.0.2, etc). Once the initial stable release of
82 any stable branch has taken place, this branch is <span class=
83 "emphasis"><i class="EMPHASIS">only used for bugfixes</i></span>, which
84 have had prior testing before being committed to CVS. (See <a href=
85 "newrelease.html#VERSIONNUMBERS">Version Numbers</a> below for details
88 <p>At one time there were two distinct branches: stable and unstable.
89 The more drastic changes were to be in the unstable branch. These
90 branches have now been merged to minimize time and effort of
91 maintaining two branches.</p>
95 <h2 class="SECT2"><a name="CVSCOMMIT" id="CVSCOMMIT">2.3. CVS Commit
98 <p>The source tree is the heart of every software project. Every effort
99 must be made to ensure that it is readable, compilable and consistent
100 at all times. There are differing guidelines for the stable branch and
101 the main development trunk, and we ask anyone with CVS access to
102 strictly adhere to the following guidelines:</p>
104 <p>Basic Guidelines, for all branches:</p>
108 <p>Please don't commit even a small change without testing it
109 thoroughly first. When we're close to a public release, ask a
110 fellow developer to review your changes.</p>
114 <p>Your commit message should give a concise overview of
115 <span class="emphasis"><i class="EMPHASIS">what you
116 changed</i></span> (no big details) and <span class=
117 "emphasis"><i class="EMPHASIS">why you changed it</i></span> Just
118 check previous messages for good examples.</p>
122 <p>Don't use the same message on multiple files, unless it equally
123 applies to all those files.</p>
127 <p>If your changes span multiple files, and the code won't
128 recompile unless all changes are committed (e.g. when changing the
129 signature of a function), then commit all files one after another,
130 without long delays in between. If necessary, prepare the commit
131 messages in advance.</p>
135 <p>Before changing things on CVS, make sure that your changes are
136 in line with the team's general consensus on what should be
141 <p>Note that near a major public release, we get more cautious.
142 There is always the possibility to submit a patch to the <a href=
143 "http://sourceforge.net/tracker/?atid=311118&group_id=11118&func=browse"
144 target="_top">patch tracker</a> instead.</p>
150 <div class="NAVFOOTER">
151 <hr align="left" width="100%">
153 <table summary="Footer navigation table" width="100%" border="0"
154 cellpadding="0" cellspacing="0">
156 <td width="33%" align="left" valign="top"><a href="introduction.html"
157 accesskey="P">Prev</a></td>
159 <td width="34%" align="center" valign="top"><a href="index.html"
160 accesskey="H">Home</a></td>
162 <td width="33%" align="right" valign="top"><a href=
163 "documentation.html" accesskey="N">Next</a></td>
167 <td width="33%" align="left" valign="top">Introduction</td>
169 <td width="34%" align="center" valign="top"> </td>
171 <td width="33%" align="right" valign="top">Documentation