source: general/prog/subversion.xml@ f4cbce35

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since f4cbce35 was f4cbce35, checked in by Douglas R. Reno <renodr@…>, 7 years ago

Remove the test suite from the itstool page
Typo fix

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

  • Property mode set to 100644
File size: 18.3 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://www.apache.org/dist/subversion/subversion-&subversion-version;.tar.bz2">
9 <!ENTITY subversion-download-ftp " ">
10 <!ENTITY subversion-md5sum "9fcbae352a5efe73d46a88c97c6bba14">
11 <!ENTITY subversion-size "7.5 MB">
12 <!ENTITY subversion-buildsize "177 MB (add 173 MB for bindings, 24 MB for docs, 1 GB for tests)">
13 <!ENTITY subversion-time "1.3 SBU (add 1.4 SBU for bindings, 24 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 &lfs7a_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="serf"/> (for handling http:// and https:// URLs)
91 </para>
92
93<!-- support for berkeley db is deprecated since 1.8
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
104 <bridgehead renderas="sect4">Optional</bridgehead>
105 <para role="optional">
106 <xref linkend="apache"/>,
107<!-- support for berkeley db is deprecated since 1.8
108 <xref linkend="db"/>,
109-->
110 <xref linkend="cyrus-sasl"/>,
111 <xref linkend="dbus"/>,
112<!-- <xref linkend="kdelibs"/> (for <ulink url="http://utils.kde.org/projects/kwalletmanager/">KWallet</ulink> support), -->
113 <xref linkend="python2"/> (with sqlite support for the tests),
114 <xref linkend="ruby"/>, and
115 <xref linkend="swig"/> (for building Perl, Python and Ruby bindings)
116 </para>
117
118 <bridgehead renderas="sect4">Optional (for the Java Bindings)</bridgehead>
119 <para role="optional">
120 One of <xref linkend="openjdk"/>,
121 <ulink url="http://www.inet.no/dante/">Dante</ulink> or
122 <ulink url="http://jikes.sourceforge.net/">Jikes</ulink>,
123 and <xref linkend="junit"/> (to test the Java bindings)
124 </para>
125
126 <para condition="html" role="usernotes">
127 User Notes: <ulink url="&blfs-wiki;/subversion"/>
128 </para>
129
130 </sect2>
131
132 <sect2 role="installation">
133 <title>Installation of Subversion</title>
134
135 <note>
136 <para>
137 This package may fail during the make phase when using multiple
138 processors. If this occurs try continuing with
139 <emphasis>make -j1</emphasis> or redo the entire build process with
140 fresh sources using <emphasis>-j1</emphasis>.
141 </para>
142 </note>
143
144 <para>
145 Install <application>Subversion</application> by running the following
146 commands:
147 </para>
148
149<screen><userinput>sed -i "/seems to be moved/s/^/#/" build/ltmain.sh &amp;&amp;
150./configure --prefix=/usr \
151 --disable-static \
152 --with-apache-libexecdir &amp;&amp;
153make</userinput></screen>
154
155 <para>
156 If you have <xref linkend="doxygen"/> installed and you wish to build the
157 API documentation, issue: <command>doxygen doc/doxygen.conf</command>.
158 </para>
159
160 <para>
161 If you passed the <option>--enable-javahl</option> parameter to
162 <command>configure</command> and wish to build the Java bindings, issue
163 the following command:
164 </para>
165 <para>
166 <screen><command>make javahl</command></screen>
167 </para>
168
169 <para>
170 If you want to compile <application>Perl</application>,
171 <application>Python2</application>, or <application>Ruby</application>
172 bindings, issue any of the following command:
173 </para>
174 <para>
175 <screen><command>make swig-pl</command> # for <application>Perl</application>
176<command>make swig-py \
177 swig_pydir=/usr/lib/python&python2-majorver;/site-packages/libsvn \
178 swig_pydir_extra=/usr/lib/python&python2-majorver;/site-packages/svn</command> # for <application>Python</application>
179<command>make swig-rb</command> # for <application>Ruby</application></screen>
180 </para>
181
182 <para>
183 To test the results, issue: <command>make check</command>.
184 </para>
185
186 <para>
187 To test the results of the Java bindings build,
188 issue <command>make check-javahl</command>. The
189 <application>JUnit</application> testing framework must be installed,
190 and the location of the JUnit jar has to be specified by passing the
191 <option>--with-junit=&lt;path to junit jar&gt;</option> parameter to
192 <command>configure</command>.
193 </para>
194
195 <para>
196 To test the results of any of the <application>SWIG</application>
197 bindings, you can use any of the following commands:
198 <command>make check-swig-pl</command>,
199 <command> make check-swig-py</command>, or
200 <command>make check-swig-rb</command>.
201 </para>
202
203 <!-- <para>
204 The Ruby bindings test, <command>make check-swig-rb</command>, fails due
205 to errors in the test suite.
206 </para>
207 -->
208 <para>
209 Now, as the <systemitem class="username">root</systemitem> user:
210 </para>
211
212<screen role="root"><userinput>make install &amp;&amp;
213
214install -v -m755 -d /usr/share/doc/subversion-&subversion-version; &amp;&amp;
215cp -v -R doc/* \
216 /usr/share/doc/subversion-&subversion-version;</userinput></screen>
217
218 <para>
219 If you built the Java bindings, issue the following command as the
220 <systemitem class="username">root</systemitem> user to install them:
221 </para>
222 <para>
223 <screen> <command>make install-javahl</command></screen>
224 </para>
225
226 <para>
227 If you built the <application>Perl</application>,
228 <application>Python2</application>, or
229 <application>Ruby</application> bindings, issue any of the following
230 commands as the <systemitem class="username">root</systemitem> user
231 to install them:
232 </para>
233 <para>
234 <screen><command>make install-swig-pl</command>
235<command>make install-swig-py \
236 swig_pydir=/usr/lib/python&python2-majorver;/site-packages/libsvn \
237 swig_pydir_extra=/usr/lib/python&python2-majorver;/site-packages/svn</command>
238<command>make install-swig-rb</command></screen>
239 </para>
240
241 </sect2>
242
243 <sect2 role="commands">
244 <title>Command Explanations</title>
245
246 <para>
247 <command>sed -i ... build/ltmain.sh</command>: This sed silences several
248 annoying and useless warnings emitted from libtool.
249 </para>
250
251 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
252 href="../../xincludes/static-libraries.xml"/>
253
254 <para>
255 <parameter>--with-apache-libexecdir</parameter>:
256 If <xref linkend="apache"/> is installed, the shared
257 <application>Apache</application> modules are
258 built. This switch allows to have those modules installed to
259 <application>Apache</application>'s configured module dir instead
260 of <filename class="directory">/usr/libexec</filename>. It has no effect
261 if <application>Apache</application> is not installed.
262 </para>
263
264 <para>
265 <option>--enable-javahl</option>: enables compilation of Java high level
266 bindings. Running <command>make javahl</command> is necessary to do
267 the compilation.
268 </para>
269
270 <para>
271 <option>--with-junit=&lt;location of the junit jar file&gt;</option>:
272 gives the location of the junit jar, otherwise the javahl tests cannot
273 be run.
274 </para>
275
276 <para>
277 <option>--disable-gmock</option>: Do not use the Googlemock testing
278 framework.
279 </para>
280
281 </sect2>
282
283 <sect2 role="configuration">
284 <title>Configuring Subversion</title>
285
286 <sect3 id="subversion-config">
287 <title>Config Files</title>
288
289 <para>
290 <filename>~/.subversion/config</filename> and
291 <filename>/etc/subversion/config</filename>
292 </para>
293
294 <indexterm zone="subversion subversion-config">
295 <primary sortas="e-AA.subversion/config">~/.subversion/config</primary>
296 </indexterm>
297
298 <indexterm zone="subversion subversion-config">
299 <primary sortas="e-etc-subversion-config">/etc/subversion/config</primary>
300 </indexterm>
301 </sect3>
302
303 <sect3>
304 <title>Configuration Information</title>
305
306 <para>
307 <filename>/etc/subversion/config</filename> is the
308 <application>Subversion</application> system-wide configuration file.
309 This file is used to specify defaults for different
310 <command>svn</command> commands.
311 </para>
312
313 <para>
314 <filename>~/.subversion/config</filename> is the user's personal
315 configuration file. It is used to override the system-wide defaults set
316 in <filename>/etc/subversion/config</filename>.
317 </para>
318 </sect3>
319
320 </sect2>
321
322 <sect2 role="content">
323 <title>Contents</title>
324
325 <segmentedlist>
326 <segtitle>Installed Programs</segtitle>
327 <segtitle>Installed Libraries</segtitle>
328 <segtitle>Installed Directories</segtitle>
329
330 <seglistitem>
331 <seg>
332 svn, svnadmin, svnbench, svndumpfilter, svnfsfs, svnlook, svnmucc,
333 svnrdump, svnserve, svnsync, and svnversion
334 </seg>
335 <seg>
336 libsvn_*-1.so and optionally, a Java library, the mod_dav_svn.so and
337 and mod_authz_svn.so <application>Apache HTTP</application> DSO
338 modules and various <application>Perl</application>,
339 <application>Python</application> and
340 <application>Ruby</application> modules.
341 </seg>
342 <seg>
343 /usr/include/subversion-1,
344 /usr/lib/perl5/site_perl/&lfs-perl-version;/{,auto/}SVN,
345 /usr/lib/python2.7/site-packages/{libsvn,svn},
346 /usr/lib/ruby/site_ruby/&lt;x.y.z&gt;/{,&lt;arch-linux&gt;-linux/}svn,
347 /usr/lib/svn-javahl, and
348 /usr/share/doc/subversion-&subversion-version;
349 </seg>
350 </seglistitem>
351 </segmentedlist>
352
353 <variablelist>
354 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
355 <?dbfo list-presentation="list"?>
356 <?dbhtml list-presentation="table"?>
357
358 <varlistentry id="svn">
359 <term><command>svn</command></term>
360 <listitem>
361 <para>
362 is a command-line client program used to access
363 <application>Subversion</application> repositories.
364 </para>
365 <indexterm zone="subversion svn">
366 <primary sortas="b-svn">svn</primary>
367 </indexterm>
368 </listitem>
369 </varlistentry>
370
371 <varlistentry id="svnadmin">
372 <term><command>svnadmin</command></term>
373 <listitem>
374 <para>
375 is a tool for creating, tweaking or repairing a
376 <application>Subversion</application> repository.
377 </para>
378 <indexterm zone="subversion svnadmin">
379 <primary sortas="b-svnadmin">svnadmin</primary>
380 </indexterm>
381 </listitem>
382 </varlistentry>
383
384 <varlistentry id="svnbench">
385 <term><command>svnbench</command></term>
386 <listitem>
387 <para>
388 is a benchmarking tool.
389 </para>
390 <indexterm zone="subversion svnbench">
391 <primary sortas="b-svnbench">svnbench</primary>
392 </indexterm>
393 </listitem>
394 </varlistentry>
395
396 <varlistentry id="svndumpfilter">
397 <term><command>svndumpfilter</command></term>
398 <listitem>
399 <para>
400 is a program for filtering <application>Subversion</application>
401 repository dumpfile format streams.
402 </para>
403 <indexterm zone="subversion svndumpfilter">
404 <primary sortas="b-svndumpfilter">svndumpfilter</primary>
405 </indexterm>
406 </listitem>
407 </varlistentry>
408
409 <varlistentry id="svnfsfs">
410 <term><command>svnfsfs</command></term>
411 <listitem>
412 <para>
413 is the FSFS (FileSystem atop of the FileSystem -
414 <application>Subversion</application> filesystem implementation)
415 repository manipulation tool.
416 </para>
417 <indexterm zone="subversion svnfsfs">
418 <primary sortas="b-svnfsfs">svnfsfs</primary>
419 </indexterm>
420 </listitem>
421 </varlistentry>
422
423 <varlistentry id="svnlook">
424 <term><command>svnlook</command></term>
425 <listitem>
426 <para>
427 is a tool for inspecting a <application>Subversion</application>
428 repository.
429 </para>
430 <indexterm zone="subversion svnlook">
431 <primary sortas="b-svnlook">svnlook</primary>
432 </indexterm>
433 </listitem>
434 </varlistentry>
435
436 <varlistentry id="svnmucc">
437 <term><command>svnmucc</command></term>
438 <listitem>
439 <para>
440 is a Multiple URL Command Client for <application>Subversion</application>.
441 </para>
442 <indexterm zone="subversion svnmucc">
443 <primary sortas="b-svnmucc">svnmucc</primary>
444 </indexterm>
445 </listitem>
446 </varlistentry>
447
448 <varlistentry id="svnrdump">
449 <term><command>svnrdump</command></term>
450 <listitem>
451 <para>
452 is a tool for dumping or loading a remote
453 <application>Subversion</application> repository.
454 </para>
455 <indexterm zone="subversion svnrdump">
456 <primary sortas="b-svnrdump">svnrdump</primary>
457 </indexterm>
458 </listitem>
459 </varlistentry>
460
461 <varlistentry id="svnserve">
462 <term><command>svnserve</command></term>
463 <listitem>
464 <para>
465 is a custom standalone server program, able to run as a daemon
466 process or invoked by SSH.
467 </para>
468 <indexterm zone="subversion svnserve">
469 <primary sortas="b-svnserve">svnserve</primary>
470 </indexterm>
471 </listitem>
472 </varlistentry>
473
474 <varlistentry id="svnsync">
475 <term><command>svnsync</command></term>
476 <listitem>
477 <para>
478 is a <application>Subversion</application> repository
479 synchronisation tool.
480 </para>
481 <indexterm zone="subversion svnsync">
482 <primary sortas="b-svnsync">svnsync</primary>
483 </indexterm>
484 </listitem>
485 </varlistentry>
486
487 <varlistentry id="svnversion">
488 <term><command>svnversion</command></term>
489 <listitem>
490 <para>
491 is used to report the version number and state of a working
492 <application>Subversion</application> repository copy.
493 </para>
494 <indexterm zone="subversion svnversion">
495 <primary sortas="b-svnversion">svnversion</primary>
496 </indexterm>
497 </listitem>
498 </varlistentry>
499
500 <varlistentry id="libsvn_star-1">
501 <term><filename class="libraryfile">libsvn_*-1.so</filename></term>
502 <listitem>
503 <para>
504 are the support libraries used by the
505 <application>Subversion</application> programs.
506 </para>
507 <indexterm zone="subversion libsvn_star-1">
508 <primary sortas="c-libsvn_star-1">libsvn_*-1.so</primary>
509 </indexterm>
510 </listitem>
511 </varlistentry>
512
513 <varlistentry id="mod_authz_svn">
514 <term><filename class="libraryfile">mod_authz_svn.so</filename></term>
515 <listitem>
516 <para>
517 is a plug-in module for the <application>Apache</application> HTTP
518 server, used to authenticate users to a
519 <application>Subversion</application> repository over the Internet
520 or an intranet.
521 </para>
522 <indexterm zone="subversion mod_authz_svn">
523 <primary sortas="c-mod_authz_svn">mod_authz_svn.so</primary>
524 </indexterm>
525 </listitem>
526 </varlistentry>
527
528 <varlistentry id="mod_dav_svn">
529 <term><filename class="libraryfile">mod_dav_svn.so</filename></term>
530 <listitem>
531 <para>
532 is a plug-in module for the <application>Apache</application> HTTP
533 server, used to make a <application>Subversion</application>
534 repository available to others over the Internet or an intranet.
535 </para>
536 <indexterm zone="subversion mod_dav_svn">
537 <primary sortas="c-mod_authz_svn">mod_dav_svn.so</primary>
538 </indexterm>
539 </listitem>
540 </varlistentry>
541
542 </variablelist>
543
544 </sect2>
545
546</sect1>
Note: See TracBrowser for help on using the repository browser.