Introduksjon til Subversion
Subversion er et
versjonskontrollsystem som er designet for å være en overbevisende
erstatning for CVS i åpen
kildekode fellesskapet. Det utvider og forsterker CVS' funksjonssett, samtidig som det
opprettholder et lignende grensesnitt for de som allerede er kjent
med CVS. Disse instruksjonene
installerer klient- og serverprogramvaren som brukes til manipulere
et Subversion depot. Opprettelse
av et depot er dekket i Kjøre en Subversion Server.
Notat
Utviklingsversjoner av BLFS kan ikke bygge eller kjøre noen
pakker riktig hvis LFS eller avhengigheter har blitt oppdatert
siden den siste stabile versjonene av bøkene.
Pakkeinformasjon
-
Nedlasting (HTTP):
https://archive.apache.org/dist/subversion/subversion-1.14.4.tar.bz2
-
Nedlasting MD5 sum: be9f6c5e8bb80e465152b4c5160d7f54
-
Nedlastingsstørrelse: 8.1 MB
-
Estimert diskplass som kreves: 193 MB (legg til 189 MB for
bindinger, 54 MB for dokumenter, 1,3 GB for tester)
-
Estimert byggetid: 0.4 SBU (Bruker parallellisme=4; legg til
2.0 SBU for bindinger, 30 SBU for tester)
Subversion Avhengigheter
Påkrevd
Apr-Util-1.6.3 og SQLite-3.47.0
Anbefalt
Serf-1.3.10 (for håndtering av http:// og
https:// URLs) og SWIG-4.3.0 (for å regenerere byggesystemet)
Valgfri
Apache-2.4.62, Boost-1.86.0, Cyrus
SASL-2.1.28, dbus-1.14.10, Doxygen-1.12.0 (for å
generere HTML dokumentasjon), gnome-keyring-46.2, libsecret-0.21.4, Py3c-1.4 (for
python bindinger og tester), Python-3.13.0 (med sqlite støtte for
testene), Ruby-3.3.6, SWIG-4.3.0, og UTF8proc
Valgfri (for Java bindinger)
En av OpenJDK-23.0.1, Dante eller Jikes, JUnit 4 (for å teste Java
bindingene) og apache-ant-1.10.15.
Installasjon av Subversion
Installer Subversion ved å kjøre
følgende kommandoer:
PYTHON=python3 \
./configure --prefix=/usr \
--disable-static \
--with-apache-libexecdir \
--with-utf8proc=internal &&
make
Hvis du har Doxygen-1.12.0 installert og du ønsker å bygge
API dokumentasjon, kjør:
doxygen doc/doxygen.conf
Hvis du ønsker å bygge Java bindingene, send --enable-javahl
parameteren til configure kommandoen. I tillegg,
hvis du vil kjøre Java testpakken, må du spesifisere plasseringen
av JUnit filen ved å legge til
--with-junit=<path to junit jar>
(for eksempel --with-junit=/usr/local/java/lib/junit-4.13.jar
)
til configure. JUnit
jar filen er ikke lenger inkludert i apache-ant-1.10.15
og må lastes ned for seg selv. For å bygge Java bindingene, kjør
følgende kommando:
make -j1 javahl
Hvis du vil kompilere Perl,
Python, eller Ruby bindinger, kjør en av følgende
kommandoer:
make swig-pl # for Perl
make swig-py \
swig_pydir=/usr/lib/python3.13/site-packages/libsvn \
swig_pydir_extra=/usr/lib/python3.13/site-packages/svn # for Python
make swig-rb # for Ruby
For å teste resultatene, kjør: make
check.
For å teste resultatene av noen av SWIG bindinger, kan du bruke en av følgende
kommandoer: make
check-swig-pl, make
check-swig-py, or make check-swig-rb.
Nå, som root
bruker:
make install &&
install -v -m755 -d /usr/share/doc/subversion-1.14.4 &&
cp -v -R doc/* /usr/share/doc/subversion-1.14.4
Hvis du bygde Java bindingene, kjør følgende kommando som
root
brukeren for å installere dem:
make install-javahl
Hvis du bygde Perl, Python, eller Ruby bindinger, kjør noe av de følgende
kommandoer som root
bruker for å
installere dem:
make install-swig-pl
make install-swig-py \
swig_pydir=/usr/lib/python3.13/site-packages/libsvn \
swig_pydir_extra=/usr/lib/python3.13/site-packages/svn
make install-swig-rb
Java bindingene må installeres for at testene skal kjøre, siden
testene prøver å se etter dem i CLASSPATH. For å teste resultater
av Java bindingsbygget, kjør LANG=C
make check-javahl.
Parameterforklaringer
--disable-static
: Denne
bryteren forhindrer installasjon av statiske versjoner av
bibliotekene.
--with-apache-libexecdir
:
Hvis Apache-2.4.62 er installert, de delte
Apache moduler blir bygget. Denne
bryteren gjør det mulig å installere disse modulene i Apache sin konfigurert modul mappe i stedet
for /usr/libexec
. Det har ingen
effekt hvis Apache ikke er
installert.
--with-utf8proc=internal
:
Fjern disse bryterne hvis du har installert de valgfrie
avhengighetene.
--enable-javahl
: muliggjør kompilering
av Java høynivå bindinger. Kjøre make
javahl er nødvendig å gjøre kompilasjonen.
--with-junit=<location of the junit jar
file>
: gir plasseringen av junit jar, ellers kan javahl
testene ikke bli kjørt.
--disable-gmock
: Ikke bruk Googlemock
testing rammeverk.