source: general/prog/subversion.xml@ 0b585c59

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 0b585c59 was 299d5c54, checked in by Krejzi <krejzi@…>, 11 years ago

Package updates, add Serf package for Subversion, fix NSS instructions, add back the patch which adds nss-config and nss.pc.

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

  • Property mode set to 100644
File size: 15.8 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
8 "http://archive.apache.org/dist/subversion/subversion-&subversion-version;.tar.bz2">
9 <!ENTITY subversion-download-ftp " ">
10 <!ENTITY subversion-md5sum "f053a9948dfe5c70eff5c00509723214">
11 <!ENTITY subversion-size "6.4 MB">
12 <!ENTITY subversion-buildsize "132 MB (additional 780 MB for tests)">
13 <!ENTITY subversion-time "1.1 SBU (additional 7 SBU for tests)">
14]>
15
16<sect1 id="subversion" xreflabel="Subversion-&subversion-version;">
17 <?dbhtml filename="subversion.html"?>
18
19 <sect1info>
20 <othername>$LastChangedBy$</othername>
21 <date>$Date$</date>
22 </sect1info>
23
24 <title>Subversion-&subversion-version;</title>
25
26 <indexterm zone="subversion">
27 <primary sortas="a-Subversion">Subversion</primary>
28 </indexterm>
29
30 <sect2 role="package">
31 <title>Introduction to Subversion</title>
32
33 <para>
34 <application>Subversion</application> is a version control system that is
35 designed to be a compelling replacement for <application>CVS</application>
36 in the open source community. It extends and enhances
37 <application>CVS</application>' feature set, while maintaining a similar
38 interface for those already familiar with <application>CVS</application>.
39 These instructions install the client and server software used to
40 manipulate a <application>Subversion</application> repository. Creation of
41 a repository is covered at <xref linkend="svnserver"/>.
42 </para>
43
44 &lfs73_checked;
45
46 <bridgehead renderas="sect3">Package Information</bridgehead>
47 <itemizedlist spacing="compact">
48 <listitem>
49 <para>
50 Download (HTTP): <ulink url="&subversion-download-http;"/>
51 </para>
52 </listitem>
53 <listitem>
54 <para>
55 Download (FTP): <ulink url="&subversion-download-ftp;"/>
56 </para>
57 </listitem>
58 <listitem>
59 <para>
60 Download MD5 sum: &subversion-md5sum;
61 </para>
62 </listitem>
63 <listitem>
64 <para>
65 Download size: &subversion-size;
66 </para>
67 </listitem>
68 <listitem>
69 <para>
70 Estimated disk space required: &subversion-buildsize;
71 </para>
72 </listitem>
73 <listitem>
74 <para>
75 Estimated build time: &subversion-time;
76 </para>
77 </listitem>
78 </itemizedlist>
79
80 <bridgehead renderas="sect3">Subversion Dependencies</bridgehead>
81
82 <bridgehead renderas="sect4">Required</bridgehead>
83 <para role="required">
84 <xref linkend="apr-util"/> and
85 <xref linkend="sqlite"/>
86 </para>
87
88 <bridgehead renderas="sect4">Recommended</bridgehead>
89 <para role="recommended">
90 <xref linkend="openssl"/> and
91 <xref linkend="serf"/> (for handling http:// and https:// URLs)
92 </para>
93
94 <note>
95 <para>
96 If you require the <application>Berkeley DB</application> back-end hooks
97 in <application>Subversion</application> to build or support BDB based
98 repositories, you must have <application>APR-util</application> linked to
99 the <application>Berkeley DB</application> library.
100 </para>
101 </note>
102
103 <bridgehead renderas="sect4">Optional</bridgehead>
104 <para role="optional">
105 <xref linkend="apache"/>,
106 <xref linkend="db"/>,
107 <xref linkend="cyrus-sasl"/>,
108 <xref linkend="dbus"/>,
109 <xref linkend="libgnome-keyring"/>,
110 <xref linkend="kdelibs"/> (for <ulink url="http://utils.kde.org/projects/kwalletmanager/">KWallet</ulink> support),
111 <xref linkend="python2"/> (required to run the test suite) and
112 <xref linkend="ruby"/>
113 </para>
114
115 <bridgehead renderas="sect4">Optional (for the Java Bindings)</bridgehead>
116 <para role="optional">
117 One of <xref linkend="openjdk"/>,
118 <ulink url="http://www.inet.no/dante/">Dante</ulink> or
119 <ulink url="http://oss.software.ibm.com/developerworks/opensource/jikes/">Jikes</ulink>,
120 and <xref linkend="junit"/> (to test the Java bindings)
121 </para>
122
123 <bridgehead renderas="sect4">Optional (for the SWIG Bindings)</bridgehead>
124 <para role="optional">
125 <ulink url="http://www.swig.org/">SWIG</ulink>
126 </para>
127
128 <para condition="html" role="usernotes">
129 User Notes: <ulink url="&blfs-wiki;/subversion"/>
130 </para>
131 </sect2>
132
133 <sect2 role="installation">
134 <title>Installation of Subversion</title>
135
136 <para>
137 Install <application>Subversion</application> by running the following
138 commands:
139 </para>
140
141<screen><userinput>./configure --prefix=/usr --disable-static &amp;&amp;
142make</userinput></screen>
143
144 <para>
145 If you have <xref linkend="doxygen"/> installed and you wish to build the
146 API documentation, issue: <command>doxygen doc/doxygen.conf</command>.
147 </para>
148
149 <para>
150 If you passed the <option>--enable-javahl</option> parameter to
151 <command>configure</command> and wish to build the Java bindings, issue
152 the following command:
153 </para>
154
155<screen><userinput>make javahl</userinput></screen>
156
157 <para>
158 If you have a multi core CPU and normally run <command>make</command> with
159 multiple jobs (eg <command>make -j4</command>) then a bug in the
160 <filename>Makefile</filename> will prevent the
161 <application>Perl</application> bindings compiling correctly. Fix the
162 <filename>Makefile</filename> with this sed:
163 </para>
164
165<screen><userinput>sed -i 's#Makefile.PL.in$#&amp; libsvn_swig_perl#' Makefile.in</userinput></screen>
166
167 <para>
168 To compile the <application>Perl</application>,
169 <application>Python</application> or <application>Ruby</application>
170 bindings issue any of the following commands:
171 </para>
172<screen><userinput>make swig-pl &amp;&amp;
173make swig-py &amp;&amp;
174make swig-rb</userinput></screen>
175
176 <para>
177 To test the results, issue: <command>make check</command>.
178 </para>
179
180 <para>
181 To test the results of the Java bindings build, issue
182 <command>make check-javahl</command>. Note you must have the
183 <application>JUnit</application> testing framework installed.
184 </para>
185
186 <para>
187 To test the results of any of the <application>SWIG</application>
188 bindings, you can use any of the following commands:
189 </para>
190
191<screen><userinput>make check-swig-pl &amp;&amp;
192make check-swig-py &amp;&amp;
193make check-swig-rb </userinput></screen>
194
195 <para>
196 Now, as the <systemitem class="username">root</systemitem> user:
197 </para>
198
199<screen role="root"><userinput>make install &amp;&amp;
200install -v -m755 -d /usr/share/doc/subversion-&subversion-version; &amp;&amp;
201cp -v -R doc/* \
202 /usr/share/doc/subversion-&subversion-version;</userinput></screen>
203
204 <para>
205 If you built the Java bindings, issue the following command as the
206 <systemitem class="username">root</systemitem> user to install them:
207 </para>
208
209<screen role="root"><userinput>make install-javahl</userinput></screen>
210
211 <para>
212 If you built any of the <application>SWIG</application> bindings, issue
213 any of the following commands as the
214 <systemitem class="username">root</systemitem> user to install them:
215 </para>
216
217<screen role="root"><userinput>make install-swig-pl &amp;&amp;
218make install-swig-py &amp;&amp;
219make install-swig-rb</userinput></screen>
220
221 <para>
222 In order for <application>Python</application> to automatically discover
223 the bindings, add
224 <filename class="directory">/usr/lib/svn-python</filename> to the
225 <envar>PYTHONPATH</envar> environment variable to the system or personal
226 profiles.
227 </para>
228
229 </sect2>
230
231 <sect2 role="commands">
232 <title>Command Explanations</title>
233
234 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
235 href="../../xincludes/static-libraries.xml"/>
236
237 </sect2>
238
239 <sect2 role="configuration">
240 <title>Configuring Subversion</title>
241
242 <sect3 id="subversion-config">
243 <title>Config Files</title>
244
245 <para>
246 <filename>~/.subversion/config</filename> and
247 <filename>/etc/subversion/config</filename>
248 </para>
249
250 <indexterm zone="subversion subversion-config">
251 <primary sortas="e-AA.subversion/config">~/.subversion/config</primary>
252 </indexterm>
253
254 <indexterm zone="subversion subversion-config">
255 <primary sortas="e-etc-subversion-config">/etc/subversion/config</primary>
256 </indexterm>
257 </sect3>
258
259 <sect3>
260 <title>Configuration Information</title>
261
262 <para>
263 <filename>/etc/subversion/config</filename> is the
264 <application>Subversion</application> system-wide configuration file.
265 This file is used to specify defaults for different
266 <command>svn</command> commands.
267 </para>
268
269 <para>
270 <filename>~/.subversion/config</filename> is the user's personal
271 configuration file. It is used to override the system-wide defaults set
272 in <filename>/etc/subversion/config</filename>.
273 </para>
274 </sect3>
275
276 </sect2>
277
278 <sect2 role="content">
279 <title>Contents</title>
280
281 <segmentedlist>
282 <segtitle>Installed Programs</segtitle>
283 <segtitle>Installed Libraries</segtitle>
284 <segtitle>Installed Directories</segtitle>
285
286 <seglistitem>
287 <seg>
288 svn, svnadmin, svndumpfilter, svnlook, svnmucc, svnrdump, svnserve,
289 svnsync, and svnversion
290 </seg>
291 <seg>
292 libsvn_*-1.so and optionally, a Java library, the mod_dav_svn.so and
293 and mod_authz_svn.so <application>Apache HTTP</application> DSO
294 modules and various <application>Perl</application>,
295 <application>Python</application> and
296 <application>Ruby</application> modules.
297 </seg>
298 <seg>
299 /usr/include/subversion-1,
300 /usr/lib/perl5/site_perl/&lfs-perl-version;/auto/SVN (optional),
301 /usr/lib/perl5/site_perl/&lfs-perl-version;/SVN (optional),
302 /usr/lib/ruby/site_ruby/&lt;x.y&gt;/i686-linux/svn (optional),
303 /usr/lib/svn-javahl (optional),
304 /usr/lib/svn-python (optional), and
305 /usr/share/doc/subversion-&subversion-version;
306 </seg>
307 </seglistitem>
308 </segmentedlist>
309
310 <variablelist>
311 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
312 <?dbfo list-presentation="list"?>
313 <?dbhtml list-presentation="table"?>
314
315 <varlistentry id="svn">
316 <term><command>svn</command></term>
317 <listitem>
318 <para>
319 is a command-line client program used to access
320 <application>Subversion</application> repositories.
321 </para>
322 <indexterm zone="subversion svn">
323 <primary sortas="b-svn">svn</primary>
324 </indexterm>
325 </listitem>
326 </varlistentry>
327
328 <varlistentry id="svnadmin">
329 <term><command>svnadmin</command></term>
330 <listitem>
331 <para>
332 is a tool for creating, tweaking or repairing a
333 <application>Subversion</application> repository.
334 </para>
335 <indexterm zone="subversion svnadmin">
336 <primary sortas="b-svnadmin">svnadmin</primary>
337 </indexterm>
338 </listitem>
339 </varlistentry>
340
341 <varlistentry id="svndumpfilter">
342 <term><command>svndumpfilter</command></term>
343 <listitem>
344 <para>
345 is a program for filtering <application>Subversion</application>
346 repository dumpfile format streams.
347 </para>
348 <indexterm zone="subversion svndumpfilter">
349 <primary sortas="b-svndumpfilter">svndumpfilter</primary>
350 </indexterm>
351 </listitem>
352 </varlistentry>
353
354 <varlistentry id="svnlook">
355 <term><command>svnlook</command></term>
356 <listitem>
357 <para>
358 is a tool for inspecting a <application>Subversion</application>
359 repository.
360 </para>
361 <indexterm zone="subversion svnlook">
362 <primary sortas="b-svnlook">svnlook</primary>
363 </indexterm>
364 </listitem>
365 </varlistentry>
366
367 <varlistentry id="svnmucc">
368 <term><command>svnmucc</command></term>
369 <listitem>
370 <para>
371 is a Multiple URL Command Client for <application>Subversion</application>.
372 </para>
373 <indexterm zone="subversion svnmucc">
374 <primary sortas="b-svnmucc">svnmucc</primary>
375 </indexterm>
376 </listitem>
377 </varlistentry>
378
379 <varlistentry id="svnrdump">
380 <term><command>svnrdump</command></term>
381 <listitem>
382 <para>
383 is a tool for dumping or loading a remote
384 <application>Subversion</application> repository.
385 </para>
386 <indexterm zone="subversion svnrdump">
387 <primary sortas="b-svnrdump">svnrdump</primary>
388 </indexterm>
389 </listitem>
390 </varlistentry>
391
392 <varlistentry id="svnserve">
393 <term><command>svnserve</command></term>
394 <listitem>
395 <para>
396 is a custom standalone server program, able to run as a daemon
397 process or invoked by SSH.
398 </para>
399 <indexterm zone="subversion svnserve">
400 <primary sortas="b-svnserve">svnserve</primary>
401 </indexterm>
402 </listitem>
403 </varlistentry>
404
405 <varlistentry id="svnsync">
406 <term><command>svnsync</command></term>
407 <listitem>
408 <para>
409 is a <application>Subversion</application> repository
410 synchronisation tool.
411 </para>
412 <indexterm zone="subversion svnsync">
413 <primary sortas="b-svnsync">svnsync</primary>
414 </indexterm>
415 </listitem>
416 </varlistentry>
417
418 <varlistentry id="svnversion">
419 <term><command>svnversion</command></term>
420 <listitem>
421 <para>
422 is used to report the version number and state of a working
423 <application>Subversion</application> repository copy.
424 </para>
425 <indexterm zone="subversion svnversion">
426 <primary sortas="b-svnversion">svnversion</primary>
427 </indexterm>
428 </listitem>
429 </varlistentry>
430
431 <varlistentry id="libsvn_star-1">
432 <term><filename class="libraryfile">libsvn_*-1.so</filename></term>
433 <listitem>
434 <para>
435 are the support libraries used by the
436 <application>Subversion</application> programs.
437 </para>
438 <indexterm zone="subversion libsvn_star-1">
439 <primary sortas="c-libsvn_star-1">libsvn_*-1.so</primary>
440 </indexterm>
441 </listitem>
442 </varlistentry>
443
444 <varlistentry id="mod_authz_svn">
445 <term><filename class="libraryfile">mod_authz_svn.so</filename></term>
446 <listitem>
447 <para>
448 is a plug-in module for the <application>Apache</application> HTTP
449 server, used to authenticate users to a
450 <application>Subversion</application> repository over the Internet
451 or an intranet.
452 </para>
453 <indexterm zone="subversion mod_authz_svn">
454 <primary sortas="c-mod_authz_svn">mod_authz_svn.so</primary>
455 </indexterm>
456 </listitem>
457 </varlistentry>
458
459 <varlistentry id="mod_dav_svn">
460 <term><filename class="libraryfile">mod_dav_svn.so</filename></term>
461 <listitem>
462 <para>
463 is a plug-in module for the <application>Apache</application> HTTP
464 server, used to make a <application>Subversion</application>
465 repository available to others over the Internet or an intranet.
466 </para>
467 <indexterm zone="subversion mod_dav_svn">
468 <primary sortas="c-mod_authz_svn">mod_dav_svn.so</primary>
469 </indexterm>
470 </listitem>
471 </varlistentry>
472
473 </variablelist>
474
475 </sect2>
476
477</sect1>
Note: See TracBrowser for help on using the repository browser.