source: basicnet/netprogs/subversion.xml@ 0e25c32

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 0e25c32 was 08f25484, checked in by Randy McMurchy <randy@…>, 13 years ago

Corrections to the Subversion update

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

  • Property mode set to 100644
File size: 20.7 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 "113fca1d9e4aa389d7dc2b210010fa69">
10 <!ENTITY subversion-size "5.5 MB">
11
12 <!ENTITY subversion-buildsize "170 MB (additional 119 MB to install all bindings and 750 MB to run all test suites)">
13 <!ENTITY subversion-time "2.1 SBU (add 2.7 SBU for bindings and 7.1 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 KWallet from KDE4,
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 2.0.1 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>sed -i 's/version" !=/version" &lt;/' \
187 build/ac-macros/berkeley-db.m4 &amp;&amp;
188autoconf &amp;&amp;
189
190./configure --prefix=/usr &amp;&amp;
191make</userinput></screen>
192
193 <para>If you have <xref linkend="doxygen"/> installed and you wish to
194 build the API documentation, issue:
195 <command>doxygen doc/doxygen.conf</command>.</para>
196
197 <!-- <note>
198 <para>If you have <application>Apache</application> installed, pass
199 the <option>-with-apr=/usr</option> and
200 <option>-with-apr-util=/usr</option> switches to the
201 <command>configure</command> script. Otherwise,
202 <application>Subversion</application> will overwrite APR and APR-utils
203 from the <application>Apache</application> installation with the source
204 distribution files. You may also need to pass
205 <option>-with-apxs=/usr/sbin/apxs</option> as <command>apxs</command>
206 might not be in an unprivileged user's <envar>PATH</envar> and won't be
207 properly discovered. Additionally if you have
208 <application>Apache</application> installed, you may safely remove the
209 <parameter>-with-installbuilddir=/usr/lib/apr-0</parameter> parameter
210 as it will have no effect.</para>
211 </note> -->
212
213 <para>If you passed the <option>--enable-javahl</option> parameter to
214 <command>configure</command> and wish to build the Java bindings, issue
215 the following command:</para>
216
217<screen><userinput>make javahl</userinput></screen>
218
219 <para>If you have the necessary dependencies installed and you wish to
220 build the <application>Perl</application>,
221 <application>Python</application> and/or
222 <application>Ruby</application> bindings, issue any or all of the following
223 commands:</para>
224
225<screen><userinput>make swig-pl &amp;&amp;
226make swig-py &amp;&amp;
227make swig-rb</userinput></screen>
228
229 <para>To test the results, issue: <command>make check</command>.</para>
230
231 <para>To test the results of the Java bindings build, issue
232 <command>make check-javahl</command>. Note you must have the
233 <application>JUnit</application> testing framework installed.</para>
234
235 <para>To test the results of any or all of the
236 <application>SWIG</application> bindings, you can use the following
237 commands:</para>
238
239<screen><userinput>make check-swig-pl &amp;&amp;
240make check-swig-py &amp;&amp;
241make check-swig-rb</userinput></screen>
242
243 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
244
245<screen role='root'><userinput>make install &amp;&amp;
246install -v -m755 -d /usr/share/doc/subversion-&subversion-version; &amp;&amp;
247cp -v -R doc/* \
248 /usr/share/doc/subversion-&subversion-version;</userinput></screen>
249
250 <para>If you built the Java bindings, issue the following command
251 as the <systemitem class="username">root</systemitem> user to install
252 them:</para>
253
254<screen role='root'><userinput>make install-javahl</userinput></screen>
255
256 <para>If you built any of the <application>SWIG</application> bindings,
257 issue any or all of the following commands as the
258 <systemitem class="username">root</systemitem> user to install them:</para>
259
260<screen role='root'><userinput>make install-swig-pl &amp;&amp;
261make install-swig-py &amp;&amp;
262make install-swig-rb</userinput></screen>
263
264 <para>In order for <application>Python</application> to automatically
265 discover the bindings, add
266 <filename class='directory'>/usr/lib/svn-python</filename> to the
267 <envar>PYTHONPATH</envar> environment variable to the system or
268 personal profiles.</para>
269
270 </sect2>
271
272 <sect2 role="commands">
273 <title>Command Explanations</title>
274
275 <para><command>sed -i '...' build/ac-macros/berkeley-db.m4</command>:
276 This command fixes the <application>Berkeley-DB</application> discovery
277 if the <application>Berkeley-DB</application> version is greater than
278 4.x.</para>
279
280 <para><command>autoconf</command>: This command is used to generate a new
281 <command>configure</command> script to incorporate the changes from the
282 previous command.</para>
283
284 <para><option>--with-apr=<replaceable>&lt;prefix&gt;</replaceable>
285 --with-apr-util=<replaceable>&lt;prefix&gt;</replaceable></option>:
286 These options should be used if you wish to use the system-installed
287 version of the <application>APR</application>. Ensure you identify the
288 correct installation prefix.</para>
289
290 <para><option>--with-apxs=/usr/sbin/apxs</option>: This option should be
291 used to identify the system-installed version of the
292 <command>apxs</command> command installed during the
293 <application>Apache HTTPD</application> installation as
294 <command>apxs</command> might not be in an unprivileged user's
295 <envar>PATH</envar> and won't be properly discovered.</para>
296
297 <!-- <para><parameter>-with-installbuilddir=/usr/lib/apr-0</parameter>:
298 This parameter is used (and only has an effect if you used the
299 <application>Subversion dependencies</application> package) to force the
300 installation of some APR-related support programs to
301 <filename class="directory">/usr/lib/apr-0</filename> instead of
302 <filename class="directory">/usr/build</filename>.</para> -->
303
304 </sect2>
305
306 <sect2 role="configuration">
307 <title>Configuring Subversion</title>
308
309 <sect3 id="subversion-config">
310 <title>Config Files</title>
311
312 <para><filename>~/.subversion/config</filename> and
313 <filename>/etc/subversion/config</filename></para>
314
315 <indexterm zone="subversion subversion-config">
316 <primary sortas="e-AA.subversion/config">~/.subversion/config</primary>
317 </indexterm>
318
319 <indexterm zone="subversion subversion-config">
320 <primary sortas="e-etc-subversion-config">/etc/subversion/config</primary>
321 </indexterm>
322
323 </sect3>
324
325 <sect3>
326 <title>Configuration Information</title>
327
328 <para><filename>/etc/subversion/config</filename> is the
329 <application>Subversion</application> system-wide configuration file.
330 This file is used to specify defaults for different
331 <command>svn</command> commands.</para>
332
333 <para><filename>~/.subversion/config</filename> is the user's personal
334 configuration file. It is used to override the system-wide defaults
335 set in <filename>/etc/subversion/config</filename>.</para>
336
337 </sect3>
338
339 </sect2>
340
341 <sect2 role="content">
342 <title>Contents</title>
343
344 <segmentedlist>
345 <segtitle>Installed Programs</segtitle>
346 <segtitle>Installed Libraries</segtitle>
347 <segtitle>Installed Directories</segtitle>
348
349 <seglistitem>
350 <seg>svn, svnadmin, svndumpfilter, svnlook, svnserve, svnsync and
351 svnversion</seg>
352 <seg>libsvn*.{so,a} and optionally, a Java library, the mod_dav_svn.so,
353 and mod_authz_svn.so <application>Apache HTTP</application>
354 DSO modules and various <application>Perl</application>,
355 <application>Python</application> and <application>Ruby</application>
356 modules</seg>
357 <seg>/usr/include/subversion-1,
358 /usr/lib/perl5/site_perl/&lfs-perl-version;/i686-linux/auto/SVN (optional),
359 /usr/lib/perl5/site_perl/&lfs-perl-version;/i686-linux/SVN (optional),
360 /usr/lib/ruby/site_ruby/x.x/i686-linux/svn (optional),
361 /usr/lib/svn-javahl (optional),
362 /usr/lib/svn-python (optional) and
363 /usr/share/doc/subversion-&subversion-version;</seg>
364 </seglistitem>
365 </segmentedlist>
366
367 <variablelist>
368 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
369 <?dbfo list-presentation="list"?>
370 <?dbhtml list-presentation="table"?>
371
372 <varlistentry id="svn">
373 <term><command>svn</command></term>
374 <listitem>
375 <para>is a command-line client program used to access
376 <application>Subversion</application> repositories.</para>
377 <indexterm zone="subversion svn">
378 <primary sortas="b-svn">svn</primary>
379 </indexterm>
380 </listitem>
381 </varlistentry>
382
383 <varlistentry id="svnadmin">
384 <term><command>svnadmin</command></term>
385 <listitem>
386 <para>is a tool for creating, tweaking or repairing a
387 <application>Subversion</application> repository.</para>
388 <indexterm zone="subversion svnadmin">
389 <primary sortas="b-svnadmin">svnadmin</primary>
390 </indexterm>
391 </listitem>
392 </varlistentry>
393
394 <varlistentry id="svndumpfilter">
395 <term><command>svndumpfilter</command></term>
396 <listitem>
397 <para>is a program for filtering <application>Subversion</application>
398 repository dumpfile format streams.</para>
399 <indexterm zone="subversion svndumpfilter">
400 <primary sortas="b-svndumpfilter">svndumpfilter</primary>
401 </indexterm>
402 </listitem>
403 </varlistentry>
404
405 <varlistentry id="svnlook">
406 <term><command>svnlook</command></term>
407 <listitem>
408 <para>is a tool for inspecting a
409 <application>Subversion</application> repository.</para>
410 <indexterm zone="subversion svnlook">
411 <primary sortas="b-svnlook">svnlook</primary>
412 </indexterm>
413 </listitem>
414 </varlistentry>
415
416 <varlistentry id="svnserve">
417 <term><command>svnserve</command></term>
418 <listitem>
419 <para>is a custom standalone server program, able to run as a
420 daemon process or invoked by SSH.</para>
421 <indexterm zone="subversion svnserve">
422 <primary sortas="b-svnserve">svnserve</primary>
423 </indexterm>
424 </listitem>
425 </varlistentry>
426
427 <varlistentry id="svnversion">
428 <term><command>svnversion</command></term>
429 <listitem>
430 <para>is used to report the version number and state of a
431 working <application>Subversion</application> repository copy.</para>
432 <indexterm zone="subversion svnversion">
433 <primary sortas="b-svnversion">svnversion</primary>
434 </indexterm>
435 </listitem>
436 </varlistentry>
437
438 <varlistentry id="neon-config">
439 <term><command>neon-config</command></term>
440 <listitem>
441 <para>is a script which provides information about an installed
442 copy of the <application>neon</application> library.</para>
443 <indexterm zone="subversion neon-config">
444 <primary sortas="b-neon-config">neon-config</primary>
445 </indexterm>
446 </listitem>
447 </varlistentry>
448
449 <varlistentry id="libsvn_star">
450 <term><filename class='libraryfile'>libsvn_*.{so,a}</filename></term>
451 <listitem>
452 <para>are the support libraries used by the
453 <application>Subversion</application> programs.</para>
454 <indexterm zone="subversion libsvn_star">
455 <primary sortas="c-libsvn_star">libsvn_*.{so,a}</primary>
456 </indexterm>
457 </listitem>
458 </varlistentry>
459
460 <varlistentry id="libneon">
461 <term><filename class='libraryfile'>libneon.{so,a}</filename></term>
462 <listitem>
463 <para>is used as a high-level interface to common
464 HTTP and WebDAV methods.</para>
465 <indexterm zone="subversion libneon">
466 <primary sortas="c-libneon">libneon.{so,a}</primary>
467 </indexterm>
468 </listitem>
469 </varlistentry>
470
471 <varlistentry id="mod_authz_svn">
472 <term><filename class='libraryfile'>mod_authz_svn.so</filename></term>
473 <listitem>
474 <para>is a plug-in module for the <application>Apache</application>
475 HTTP server, used to authenticate users to a
476 <application>Subversion</application> repository over the Internet or an
477 intranet.</para>
478 <indexterm zone="subversion mod_authz_svn">
479 <primary sortas="c-mod_authz_svn">mod_authz_svn.so</primary>
480 </indexterm>
481 </listitem>
482 </varlistentry>
483
484 <varlistentry id="mod_dav_svn">
485 <term><filename class='libraryfile'>mod_dav_svn.so</filename></term>
486 <listitem>
487 <para>is a plug-in module for the <application>Apache</application>
488 HTTP server, used to make a
489 <application>Subversion</application> repository available to others over the
490 Internet or an intranet.</para>
491 <indexterm zone="subversion mod_dav_svn">
492 <primary sortas="c-mod_authz_svn">mod_dav_svn.so</primary>
493 </indexterm>
494 </listitem>
495 </varlistentry>
496
497 </variablelist>
498
499 </sect2>
500
501</sect1>
Note: See TracBrowser for help on using the repository browser.