source: basicnet/netprogs/subversion.xml@ b66ece35

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 7.10 7.4 7.5 7.6 7.6-blfs 7.6-systemd 7.7 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind gnome kde5-13430 kde5-14269 kde5-14686 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts krejzi/svn lazarus lxqt nosym perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition systemd-11177 systemd-13485 trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since b66ece35 was b66ece35, checked in by DJ Lucas <dj@…>, 14 years ago

Update all jdk links to include optional IcedTea6 links.

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@8597 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 20.6 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY subversion-download-http "http://subversion.tigris.org/downloads/subversion-&subversion-version;.tar.bz2">
8 <!ENTITY subversion-download-ftp " ">
9 <!ENTITY subversion-md5sum "9c30a47b1d48664e7afef68bb4834c53">
10 <!ENTITY subversion-size "5.4 MB">
11
12 <!ENTITY subversion-buildsize "170 MB (additional 43 MB to install all bindings and 740 MB to run all test suites)">
13 <!ENTITY subversion-time "2.8 SBU (add 2.3 SBU for bindings and 6.0 SBU to run test suites)">
14
15 <!ENTITY svn-neon-version "0.28.3">
16 <!ENTITY svn-swig-version "1.3.36">
17]>
18
19<sect1 id="subversion" xreflabel="Subversion-&subversion-version;">
20 <?dbhtml filename="subversion.html"?>
21
22 <sect1info>
23 <othername>$LastChangedBy$</othername>
24 <date>$Date$</date>
25 </sect1info>
26
27 <title>Subversion-&subversion-version;</title>
28
29 <indexterm zone="subversion">
30 <primary sortas="a-Subversion">Subversion</primary>
31 </indexterm>
32
33 <sect2 role="package">
34 <title>Introduction to Subversion</title>
35
36 <para><application>Subversion</application> is a version control
37 system that is designed to be a compelling replacement for
38 <application>CVS</application> in the open source community. It
39 extends and enhances <application>CVS</application>' feature set,
40 while maintaining a similar interface for those already familiar with
41 <application>CVS</application>. These instructions install the client
42 and server software used to manipulate a
43 <application>Subversion</application> repository. Creation of a repository
44 is covered at <xref linkend="svnserver"/>.</para>
45
46 <bridgehead renderas="sect3">Package Information</bridgehead>
47 <itemizedlist spacing="compact">
48 <listitem>
49 <para>Download (HTTP): <ulink url="&subversion-download-http;"/></para>
50 </listitem>
51 <listitem>
52 <para>Download (FTP): <ulink url="&subversion-download-ftp;"/></para>
53 </listitem>
54 <listitem>
55 <para>Download MD5 sum: &subversion-md5sum;</para>
56 </listitem>
57 <listitem>
58 <para>Download size: &subversion-size;</para>
59 </listitem>
60 <listitem>
61 <para>Estimated disk space required: &subversion-buildsize;</para>
62 </listitem>
63 <listitem>
64 <para>Estimated build time: &subversion-time;</para>
65 </listitem>
66 </itemizedlist>
67
68 <!--
69 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
70 <itemizedlist spacing="compact">
71 <listitem>
72 <para>Required patch if using
73 <application>Swig</application>-1.3.25 and you wish
74 to build the <application>Perl</application> bindings: <ulink
75 url="&patch-root;/patches/subversion-&subversion-version;-swig_1.3.25-1.patch"/></para>
76 </listitem>
77 </itemizedlist>
78 -->
79
80 <bridgehead renderas="sect3">Subversion Dependencies</bridgehead>
81
82 <bridgehead renderas="sect4">Required</bridgehead>
83 <para role="required"><xref linkend="sqlite"/>, and
84 <xref linkend="apache"/> (for the
85 <application>APR</application> only) or
86 <ulink url="http://apr.apache.org/">Apache Portable Runtime</ulink></para>
87
88 <para>Note that you can use the <ulink
89 url="http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=260&amp;expandFolder=74">
90 Subversion dependencies package</ulink> as a substitute for
91 <application>SQLite</application> and the APR requirements (see the
92 <filename>INSTALL</filename> file for information on how to utilize this
93 package)</para>
94
95 <para>If you require the <application>Berkeley DB</application> back-end
96 hooks in <application>Subversion</application> to build or support BDB
97 based repositories, you must have <application>Berkeley DB</application>
98 linked into the <application>APR-util</application> library. There is
99 information in the <xref linkend="apache"/> instructions that shows the
100 required parameters to pass to the <command>configure</command> script when
101 building any of the <application>APR-util</application> packages.</para>
102
103 <bridgehead renderas="sect4">Optional</bridgehead>
104 <para role="optional"><xref linkend="python"/> (required to run the test suite),
105 <xref linkend="db"/>,
106 <xref linkend="sqlite"/>,
107 <xref linkend="cyrus-sasl"/>,
108 <xref linkend="openssl"/>,
109 <xref linkend="dbus-glib"/>,
110 <xref linkend="gnome-keyring"/>,
111 <xref linkend="kdelibs"/>,
112 <xref linkend="apache"/> (if you have <application>Apache Portable
113 Runtime</application> installed), and
114 <ulink url="http://www.webdav.org/neon/">neon</ulink> or
115 <ulink url="http://code.google.com/p/serf/">serf</ulink></para>
116
117 <!-- <para>* The <command>configure</command> script will warn that the
118 installed <application>neon</application> version is not supported if the
119 version is greater than &svn-neon-version;. You can circumvent this
120 warning by passing <option>-disable-neon-version-check</option> to the
121 <command>configure</command> command. Note that this may or may not work,
122 depending on the version of <application>neon</application> you have
123 installed, but <application>neon</application>-0.26.3 is known to
124 work.</para> -->
125
126 <bridgehead renderas="sect4">Optional to Build the Java Bindings</bridgehead>
127 <para role="optional">One of <xref linkend="icedtea6"/>,
128 <xref linkend="jdk"/>,
129 <ulink url="http://www.inet.no/dante/">Dante</ulink>, or
130 <ulink url="http://oss.software.ibm.com/developerworks/opensource/jikes/">Jikes</ulink>,
131 and <xref linkend="junit"/> (to test the Java bindings)</para>
132
133 <bridgehead renderas="sect4">Optional to Build the SWIG Bindings</bridgehead>
134 <para role="optional"><ulink url="http://www.swig.org">SWIG</ulink>**,
135 <xref linkend="python"/>, and
136 <xref linkend="ruby"/></para>
137
138 <para>** The <command>configure</command> script will issue warnings if
139 the installed version of <application>SWIG</application> is greater than
140 &svn-swig-version;, but will attempt to use it anyway if you build the
141 <application>SWIG</application> bindings. Versions of
142 <application>SWIG</application> up to 1.3.40 are known to work.</para>
143
144 <!-- <para>Note that the <application>Python</application>,
145 <application>Perl</application> and <application>Ruby</application>
146 bindings will not compile properly with the current version of
147 <application>SWIG</application>. To build the bindings, you must have
148 <application>SWIG</application>-1.3.{24,25} installed. Complete
149 instructions for building the <application>SWIG</application> bindings
150 can be found in the <application>Subversion</application> source tree
151 file <filename>./subversion/bindings/swig/INSTALL</filename>.</para> -->
152
153 <para condition="html" role="usernotes">User Notes:
154 <ulink url="&blfs-wiki;/subversion"/></para>
155
156 </sect2>
157
158 <sect2 role="installation">
159 <title>Installation of Subversion</title>
160
161 <!-- <caution>
162 <para>For reasons that are not yet fully understood,
163 <application>Subversion</application> repositories based on some versions
164 of <application>Berkeley DB</application> (notably 4.4.x) may not perform
165 reliably. Though there have been no reports of corrupted databases caused
166 by this issue, the <application>Subversion</application> test suite may
167 report a failure in one of the tests due to problems opening a repository
168 based on <application>Berkeley DB</application>. This issue only affects
169 BDB-based repositories on a local installation and does not affect access
170 to a BDB-based repository on a remote system built with older versions of
171 <application>Subversion</application> or
172 <application>Berkeley DB</application>.</para>
173
174 <para>For these reasons, the <application>Berkeley DB</application>
175 back-end is disabled, and any local BDB-based repositories you may have
176 will be unavailable after installing <application>Subversion</application>
177 using the following instructions. Please reference the information at
178 <ulink
179 url="http://svnbook.red-bean.com/en/1.1/ch05s03.html#svn-ch-5-sect-3.5"/>
180 if you need to migrate your repositores.</para>
181 </caution> -->
182
183 <para>Install <application>Subversion</application> by running the
184 following commands:</para>
185
186<screen><userinput>./configure --prefix=/usr &amp;&amp;
187make</userinput></screen>
188
189 <para>If you have <xref linkend="doxygen"/> installed and you wish to
190 build the API documentation, issue:
191 <command>doxygen doc/doxygen.conf</command>.</para>
192
193 <!-- <note>
194 <para>If you have <application>Apache</application> installed, pass
195 the <option>-with-apr=/usr</option> and
196 <option>-with-apr-util=/usr</option> switches to the
197 <command>configure</command> script. Otherwise,
198 <application>Subversion</application> will overwrite APR and APR-utils
199 from the <application>Apache</application> installation with the source
200 distribution files. You may also need to pass
201 <option>-with-apxs=/usr/sbin/apxs</option> as <command>apxs</command>
202 might not be in an unprivileged user's <envar>PATH</envar> and won't be
203 properly discovered. Additionally if you have
204 <application>Apache</application> installed, you may safely remove the
205 <parameter>-with-installbuilddir=/usr/lib/apr-0</parameter> parameter
206 as it will have no effect.</para>
207 </note> -->
208
209 <para>If you passed the <option>--enable-javahl</option> parameter to
210 <command>configure</command> and wish to build the Java bindings, issue
211 the following command:</para>
212
213<screen><userinput>make javahl</userinput></screen>
214
215 <para>If you have the necessary dependencies installed and you wish to
216 build the <application>Perl</application>,
217 <application>Python</application> and/or
218 <application>Ruby</application> bindings, issue any or all of the following
219 commands:</para>
220
221<screen><userinput>make swig-pl &amp;&amp;
222make swig-py &amp;&amp;
223make swig-rb</userinput></screen>
224
225 <para>To test the results, issue: <command>make check</command>.</para>
226
227 <para>To test the results of the Java bindings build, issue
228 <command>make check-javahl</command>. Note you must have the
229 <application>JUnit</application> testing framework installed.</para>
230
231 <para>To test the results of any or all of the
232 <application>SWIG</application> bindings, you can use the following
233 commands:</para>
234
235<screen><userinput>make check-swig-pl &amp;&amp;
236make check-swig-py &amp;&amp;
237make check-swig-rb</userinput></screen>
238
239 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
240
241<screen role='root'><userinput>make install &amp;&amp;
242install -v -m755 -d /usr/share/doc/subversion-&subversion-version; &amp;&amp;
243cp -v -R doc/* \
244 /usr/share/doc/subversion-&subversion-version;</userinput></screen>
245
246 <para>If you built the Java bindings, issue the following command
247 as the <systemitem class="username">root</systemitem> user to install
248 them:</para>
249
250<screen role='root'><userinput>make install-javahl</userinput></screen>
251
252 <para>If you built any of the <application>SWIG</application> bindings,
253 issue any or all of the following commands as the
254 <systemitem class="username">root</systemitem> user to install them:</para>
255
256<screen role='root'><userinput>make install-swig-pl &amp;&amp;
257make install-swig-py &amp;&amp;
258make install-swig-rb</userinput></screen>
259
260 <para>In order for <application>Python</application> to automatically
261 discover the bindings, add
262 <filename class='directory'>/usr/lib/svn-python</filename> to the
263 <envar>PYTHONPATH</envar> environment variable to the system or
264 personal profiles.</para>
265
266 </sect2>
267
268 <sect2 role="commands">
269 <title>Command Explanations</title>
270
271 <para><command>sed -i '...' .../Makefile.PL.in</command>: This command
272 is used to fix a problem with compiling the <application>Perl</application>
273 bindings. It can be omitted if you're not building the bindings.</para>
274
275 <para><option>--with-neon=<replaceable>&lt;prefix&gt;</replaceable></option>:
276 This option should be used if you wish to use a system-installed version
277 of <application>neon</application>.</para>
278
279 <para><option>--with-apr=<replaceable>&lt;prefix&gt;</replaceable>
280 --with-apr-util=<replaceable>&lt;prefix&gt;</replaceable></option>:
281 These options should be used if you wish to use the system-installed
282 version of the <application>APR</application>. Ensure you identify the
283 correct installation prefix.</para>
284
285 <para><option>--with-apxs=/usr/sbin/apxs</option>: This option should be
286 used to identify the system-installed version of the
287 <command>apxs</command> command installed during the
288 <application>Apache HTTPD</application> installation as
289 <command>apxs</command> might not be in an unprivileged user's
290 <envar>PATH</envar> and won't be properly discovered.</para>
291
292 <!-- <para><parameter>-with-installbuilddir=/usr/lib/apr-0</parameter>:
293 This parameter is used (and only has an effect if you used the
294 <application>Subversion dependencies</application> package) to force the
295 installation of some APR-related support programs to
296 <filename class="directory">/usr/lib/apr-0</filename> instead of
297 <filename class="directory">/usr/build</filename>.</para> -->
298
299 </sect2>
300
301 <sect2 role="configuration">
302 <title>Configuring Subversion</title>
303
304 <sect3 id="subversion-config">
305 <title>Config Files</title>
306
307 <para><filename>~/.subversion/config</filename> and
308 <filename>/etc/subversion/config</filename></para>
309
310 <indexterm zone="subversion subversion-config">
311 <primary sortas="e-AA.subversion/config">~/.subversion/config</primary>
312 </indexterm>
313
314 <indexterm zone="subversion subversion-config">
315 <primary sortas="e-etc-subversion-config">/etc/subversion/config</primary>
316 </indexterm>
317
318 </sect3>
319
320 <sect3>
321 <title>Configuration Information</title>
322
323 <para><filename>/etc/subversion/config</filename> is the
324 <application>Subversion</application> system-wide configuration file.
325 This file is used to specify defaults for different
326 <command>svn</command> commands.</para>
327
328 <para><filename>~/.subversion/config</filename> is the user's personal
329 configuration file. It is used to override the system-wide defaults
330 set in <filename>/etc/subversion/config</filename>.</para>
331
332 </sect3>
333
334 </sect2>
335
336 <sect2 role="content">
337 <title>Contents</title>
338
339 <segmentedlist>
340 <segtitle>Installed Programs</segtitle>
341 <segtitle>Installed Libraries</segtitle>
342 <segtitle>Installed Directories</segtitle>
343
344 <seglistitem>
345 <seg>svn, svnadmin, svndumpfilter, svnlook, svnserve, svnsync and
346 svnversion</seg>
347 <seg>libsvn*.{so,a} and optionally, a Java library, the mod_dav_svn.so,
348 and mod_authz_svn.so <application>Apache HTTP</application>
349 DSO modules and various <application>Perl</application>,
350 <application>Python</application> and <application>Ruby</application>
351 modules</seg>
352 <seg>/usr/include/subversion-1,
353 /usr/lib/perl5/site_perl/&lfs-perl-version;/i686-linux/auto/SVN (optional),
354 /usr/lib/perl5/site_perl/&lfs-perl-version;/i686-linux/SVN (optional),
355 /usr/lib/ruby/site_ruby/x.x/i686-linux/svn,
356 /usr/lib/svn-javahl (optional),
357 /usr/lib/svn-python (optional) and
358 /usr/share/doc/subversion-&subversion-version;</seg>
359 </seglistitem>
360 </segmentedlist>
361
362 <variablelist>
363 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
364 <?dbfo list-presentation="list"?>
365 <?dbhtml list-presentation="table"?>
366
367 <varlistentry id="svn">
368 <term><command>svn</command></term>
369 <listitem>
370 <para>is a command-line client program used to access
371 <application>Subversion</application> repositories.</para>
372 <indexterm zone="subversion svn">
373 <primary sortas="b-svn">svn</primary>
374 </indexterm>
375 </listitem>
376 </varlistentry>
377
378 <varlistentry id="svnadmin">
379 <term><command>svnadmin</command></term>
380 <listitem>
381 <para>is a tool for creating, tweaking or repairing a
382 <application>Subversion</application> repository.</para>
383 <indexterm zone="subversion svnadmin">
384 <primary sortas="b-svnadmin">svnadmin</primary>
385 </indexterm>
386 </listitem>
387 </varlistentry>
388
389 <varlistentry id="svndumpfilter">
390 <term><command>svndumpfilter</command></term>
391 <listitem>
392 <para>is a program for filtering <application>Subversion</application>
393 repository dumpfile format streams.</para>
394 <indexterm zone="subversion svndumpfilter">
395 <primary sortas="b-svndumpfilter">svndumpfilter</primary>
396 </indexterm>
397 </listitem>
398 </varlistentry>
399
400 <varlistentry id="svnlook">
401 <term><command>svnlook</command></term>
402 <listitem>
403 <para>is a tool for inspecting a
404 <application>Subversion</application> repository.</para>
405 <indexterm zone="subversion svnlook">
406 <primary sortas="b-svnlook">svnlook</primary>
407 </indexterm>
408 </listitem>
409 </varlistentry>
410
411 <varlistentry id="svnserve">
412 <term><command>svnserve</command></term>
413 <listitem>
414 <para>is a custom standalone server program, able to run as a
415 daemon process or invoked by SSH.</para>
416 <indexterm zone="subversion svnserve">
417 <primary sortas="b-svnserve">svnserve</primary>
418 </indexterm>
419 </listitem>
420 </varlistentry>
421
422 <varlistentry id="svnversion">
423 <term><command>svnversion</command></term>
424 <listitem>
425 <para>is used to report the version number and state of a
426 working <application>Subversion</application> repository copy.</para>
427 <indexterm zone="subversion svnversion">
428 <primary sortas="b-svnversion">svnversion</primary>
429 </indexterm>
430 </listitem>
431 </varlistentry>
432
433 <varlistentry id="neon-config">
434 <term><command>neon-config</command></term>
435 <listitem>
436 <para>is a script which provides information about an installed
437 copy of the <application>neon</application> library.</para>
438 <indexterm zone="subversion neon-config">
439 <primary sortas="b-neon-config">neon-config</primary>
440 </indexterm>
441 </listitem>
442 </varlistentry>
443
444 <varlistentry id="libsvn_star">
445 <term><filename class='libraryfile'>libsvn_*.{so,a}</filename></term>
446 <listitem>
447 <para>are the support libraries used by the
448 <application>Subversion</application> programs.</para>
449 <indexterm zone="subversion libsvn_star">
450 <primary sortas="c-libsvn_star">libsvn_*.{so,a}</primary>
451 </indexterm>
452 </listitem>
453 </varlistentry>
454
455 <varlistentry id="libneon">
456 <term><filename class='libraryfile'>libneon.{so,a}</filename></term>
457 <listitem>
458 <para>is used as a high-level interface to common
459 HTTP and WebDAV methods.</para>
460 <indexterm zone="subversion libneon">
461 <primary sortas="c-libneon">libneon.{so,a}</primary>
462 </indexterm>
463 </listitem>
464 </varlistentry>
465
466 <varlistentry id="mod_authz_svn">
467 <term><filename class='libraryfile'>mod_authz_svn.so</filename></term>
468 <listitem>
469 <para>is a plug-in module for the <application>Apache</application>
470 HTTP server, used to authenticate users to a
471 <application>Subversion</application> repository over the Internet or an
472 intranet.</para>
473 <indexterm zone="subversion mod_authz_svn">
474 <primary sortas="c-mod_authz_svn">mod_authz_svn.so</primary>
475 </indexterm>
476 </listitem>
477 </varlistentry>
478
479 <varlistentry id="mod_dav_svn">
480 <term><filename class='libraryfile'>mod_dav_svn.so</filename></term>
481 <listitem>
482 <para>is a plug-in module for the <application>Apache</application>
483 HTTP server, used to make a
484 <application>Subversion</application> repository available to others over the
485 Internet or an intranet.</para>
486 <indexterm zone="subversion mod_dav_svn">
487 <primary sortas="c-mod_authz_svn">mod_dav_svn.so</primary>
488 </indexterm>
489 </listitem>
490 </varlistentry>
491
492 </variablelist>
493
494 </sect2>
495
496</sect1>
Note: See TracBrowser for help on using the repository browser.