Subversion-1.15.0

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]

Notat

Utviklingsversjoner av BLFS kan kanskje ikke bygge eller kjøre noen pakker riktig hvis LFS eller avhengigheter har blitt oppdatert siden de siste stabile versjonene av bøkene.

Pakkeinformasjon

Subversion Avhengigheter

Påkrevd

Apr-Util-1.6.5

Anbefalt

Valgfri

Apache-2.4.69, Boost-1.92.0, Cyrus SASL-2.1.28, dbus-1.16.2, Doxygen-1.18.0 (for å generere HTML dokumentasjon), gnome-keyring-51.1, libsecret-0.21.8.2, Py3c-1.4 (for python bindinger og tester), Ruby-4.0.7, SWIG-4.5.1, og UTF8proc

Valgfri (for Java bindinger)

En av OpenJDK-21.0.12.1, Dante eller Jikes, JUnit 4 (for å teste Java bindingene) og apache-ant-1.10.18.

Installasjon av Subversion

Installer Subversion ved å kjøre følgende kommandoer:

./configure --prefix=/usr            \
            --disable-static         \
            --with-apache-libexecdir \
            --with-utf8proc=internal &&
make

Hvis du har Doxygen-1.18.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.18 og må lastes ned for seg selv. For å bygge Java bindingene, kjør følgende kommando:

make -j1 javahl

Hvis du skal kompilere Ruby bindinger, sett C standarden for å forhindre at byggingen feiler:

sed -i 's/Wno-int-to-pointer-cast/std=gnu17/' Makefile

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.14/site-packages/libsvn \
     swig_pydir_extra=/usr/lib/python3.14/site-packages/svn # for Python
make swig-rb # for Ruby

For å teste resultatene, kjør: make check. Flere tester commit_tests.py, prop_tests.py, og update_tests.py pakkene er kjent for å feile på grunn av forskjeller i utdata med nyere versjoner av Python og serf.

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.15.0 &&
cp      -v -R doc/* /usr/share/doc/subversion-1.15.0

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.14/site-packages/libsvn \
      swig_pydir_extra=/usr/lib/python3.14/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.69 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.

Konfigurere Subversion

Konfigurasjonsfiler

~/.subversion/config og /etc/subversion/config

Konfigurasjonsinformasjon

/etc/subversion/config er Subversion systemomfattende konfigurasjonsfil. Denne filen brukes til å spesifisere standarder for forskjellige svn kommandoer.

~/.subversion/config er brukerens personlige konfigurasjonsfil. Den brukes til å overstyre standardinnstillingene for hele systemet i /etc/subversion/config.

Innhold

Installerte Programmer: svn, svnadmin, svnbench, svndumpfilter, svnfsfs, svnlook, svnmucc, svnrdump, svnserve, svnsync, og svnversion
Installerte Biblioteker: libsvn_*-1.so og valgfritt, et Java bibliotek, mod_dav_svn.so og mod_authz_svn.so Apache HTTP DSO moduler og diverse Perl, Python og Ruby moduler.
Installerte Mapper: /usr/include/subversion-1, /usr/lib/perl5/site_perl/5.44/{,auto/}SVN, /usr/lib/python3.14/site-packages/{libsvn,svn}, /usr/lib/ruby/site_ruby/<x.y.z>/{,<arch-linux>-linux/}svn, /usr/lib/svn-javahl, og /usr/share/doc/subversion-1.15.0

Korte Beskrivelser

svn

er et kommandolinjeklientprogram som brukes til å få tilgang til Subversion depoter

svnadmin

er et verktøy for å lage, justere eller reparere et Subversion depot

svnbench

er et referanseverktøy

svndumpfilter

er et program for filtrering av Subversion depot dumpfile format strømmer

svnfsfs

er FSFS (FileSystem atop of the FileSystem - Subversion filsystemimplementering) verktøy for depot manipulering

svnlook

er et verktøy for å inspisere et Subversion depot

svnmucc

er en Multiple URL Command Client for Subversion

svnrdump

er et verktøy for å dumpe eller laste et eksternt Subversion depot

svnserve

er et tilpasset frittstående serverprogram, i stand til å kjøre som en nisse prosess eller påberopt av SSH

svnsync

er Subversion depot synkroniseringsverktøy

svnversion

brukes til å rapportere versjonsnummeret og tilstanden til en fungerende Subversion depot kopi

libsvn_*-1.so

er støttebibliotekene som brukes av Subversion programmer

mod_authz_svn.so

er et programtilleggmodul for Apache HTTP server, brukes til å autentisere brukere til et Subversion depot over Internett eller et intranett

mod_dav_svn.so

er et programtilleggmodul for Apache HTTP server, brukes for å gjøre et Subversion depot tilgjengelig for andre over Internett eller et intranett