Antworten:
Ab Ubuntu 12.10 ist Subversion 1.7 als Teil der Distribution verfügbar. Subversion kann mit apt-get installiert werden.
sudo apt-get install subversion
Für frühere Versionen von Ubuntu gibt es ein ppa bei Subversion-1.7 . Das Repository kann wie folgt hinzugefügt werden:
sudo apt-add-repository ppa:dominik-stadler/subversion-1.7
Um die neueste Version von Subversion zu erhalten, aktualisieren Sie das Repository.
sudo apt-get update
sudo apt-get upgrade
Ich musste auch ein Dist-Upgrade durchführen.
sudo apt-get dist-upgrade
Ich gehe davon aus, dass Sie bereits Subversion installiert haben, wenn nicht:
sudo apt-get install subversion
svn cleanup [repo]
bevor Sie ein Upgrade von 1.6 durchführen, da der svn 1.7-Client ältere Repositorys nicht bereinigt. Führen Sie svn upgrade [repo]
nach dem Upgrade des svn-Clients ein Upgrade der Metadaten für jedes Repository durch. Weitere Informationen stackoverflow.com/a/7754776/114900
Es gibt auch ein ppa, das direkt vom Subversion-Team unterstützt wird: "Subversion" -Team .
Sie sollten in der Lage sein, das ppa mit dem folgenden Befehl hinzuzufügen:
sudo apt-add-repository ppa:svn/ppa
Der Befehl apt-add-repository wird vom Paket python-software-properties bereitgestellt. Installieren Sie ihn daher zuerst.
Hinweis: RabbitVCS scheint ein Problem mit Subversion 1.7 zu haben: Rabbitvcs markiert in svn 1.7 nicht als versionierte Subfodler / Dateien . Dies ist im Kofferraum behoben, wurde aber (noch) nicht in einen Build verschoben.
Das Wandisco-Skript installiert tatsächlich ein neues Repository, das die .deb-Datei für die Installation von SVN 1.7 enthält.
Fast das Gleiche kann durch Ausführen der folgenden Befehle erreicht werden:
sudo add-apt-repository 'deb http://opensource.wandisco.com/ubuntu lucid svn17'
sudo wget -q http://opensource.wandisco.com/wandisco-debian.gpg -O- | sudo apt-key add -
sudo apt-get update
sudo apt-get install subversion
sudo: add-apt-repository: command not found
Fehlermeldung erhalten, müssen Sie Python-Software-Eigenschaften installieren:sudo apt-get install python-software-properties
lucid
anstelle Ihres tatsächlichen Versionsnamens zu verwenden. Sie bieten nur Freigaben für lucid
. Und stellen Sie sicher, dass Sie die entsprechende deb-src
Zeile in entfernen / auskommentieren, /etc/apt/sources.list
wenn es eine gibt.
Wenn Sie Trac verwenden Möglicherweise stellen Sie ein Problem fest, nachdem Sie Ihre Subversion mit dem WANdisco-Repository aktualisiert haben. Das Symptom ist eine Meldung auf der Trac-Site:
Warnung: Keine Synchronisierung mit dem Repository "(Standard)" möglich (Nicht unterstütztes Versionskontrollsystem "svn": Kein Modul mit dem Namen svn). Weitere Informationen finden Sie im Trac-Protokoll.
Dieses Paket bindet svn an python2.6 und Ubuntu 12.04 hat python2.7. Hier ist ein Skript, das das Problem auf meiner Seite gelöst hat:
mkdir /usr/lib/python2.7/dist-packages/libsvn
for f in /usr/lib/pyshared/python2.6/libsvn/*; do ln -s $f /usr/lib/python2.7/dist-packages/libsvn/; done
for f in /usr/share/pyshared/libsvn/*; do ln -s $f /usr/lib/python2.7/dist-packages/libsvn/; done
mkdir /usr/lib/python2.7/dist-packages/svn
for f in /usr/share/pyshared/svn/*; do ln -s $f /usr/lib/python2.7/dist-packages/svn/; done
mkdir /usr/lib/pyshared/python2.7/libsvn
for f in /usr/lib/pyshared/python2.6/libsvn/*; do ln -s $f /usr/lib/pyshared/python2.7/libsvn/; done
Ich habe Wandisco-Binärdateien mit passenden Quellen verwendet, wie Fernando es beschrieben hat, aber jetzt, da die nächste Ubuntu-Version offizielle Binärdateien auf 1.7 aktualisiert hat, wollte ich diese verwenden, während ich bei 12.04 LTS bleibe.
Die folgenden Quellen wurden zu einer neuen Datei /etc/apt/sources.list.d/svn17.list hinzugefügt:
deb http://archive.ubuntu.com/ubuntu/ quantal main universe
deb-src http://archive.ubuntu.com/ubuntu/ quantal main universe
Und dann laut Rat unter https://help.ubuntu.com/community/PinningHowto an /etc/apt/apt.conf.d/90svn17:
APT::Default-Release "precise";
Dann installiert mit
sudo apt-get install -V subversion -t quantal
Nicht sicher, ob diese neuen Dateinamen den richtigen Konventionen entsprechen, aber es funktioniert. Versuchte zuerst die Konfiguration zu fixieren, aber ohne Glück. Mit "-t quantal" wurde kein Pinning benötigt.
Glauben Sie nicht, dass noch keine öffentliche .deb-Datei verfügbar ist. Sie können dieses Skript verwenden, um 1.7 von WANdisco aus zu installieren
svn1.7_ubuntu_wandisco.sh
#!/bin/bash +x
# WANdisco Subversion Installer V0.1
# opensource@wandisco.com
echo WANdisco Subversion Installer v0.1 for Ubuntu 9.10, 10.04, 10.10
echo Please report problems and bugs to opensource@wandisco.com
echo
echo Gathering some information about your system...
MINVERSION='1'
SVNVER='1.7.0'
ARCH=`uname -m`
SVNSTATUS=`dpkg -l|grep " libsvn1 " | awk '{print $1}'`
#functions
check_is_root ()
{
if [[ $EUID -ne 0 ]]; then
echo "This script must be run as root" 1>&2
exit 1
fi
}
svn_remove_old ()
{
echo Removing old packages...
apt-get -y remove libsvn1 subversion libapache2-svn libsvn-dev libsvn-doc libsvn-perl subversion-tools
}
add_repo_config ()
{
echo Adding repository configuration to /etc/apt/sources.list.d/
if [ -f /etc/apt/sources.list.d/WANdisco.list ]; then
rm /etc/apt/sources.list.d/WANdisco.list
fi
echo "Installing Apt repo...."
echo "# WANdisco Open Source Repo" > /etc/apt/sources.list.d/WANdisco.list
echo "deb http://opensource.wandisco.com/ubuntu lucid svn17" >> /etc/apt/sources.list.d/WANdisco.list
echo "Importing GPG key"
wget http://opensource.wandisco.com/wandisco-debian.gpg -O /tmp/wandisco-debian.gpg &>/dev/null
apt-key add /tmp/wandisco-debian.gpg
rm -rf /tmp/wandisco-debian.gpg
apt-get update
}
install_svn ()
{
echo Checking to see if you already have Subversion installed via dpkg...
if [ "$SVNSTATUS" == "ii" ]; then
echo
echo Subversion is already installed on the system.
echo Do you wish to replace the version of subversion currently installed with the WANdisco version?
echo This action will remove the previous version from your system.
echo -n "[y/N]: "
read svn_install_confirm
if [ "$svn_install_confirm" == "y" -o "$svn_install_confirm" == "Y" ]; then
svn_remove_old
add_repo_config
echo
echo Installing Subversion $SVNVER-$MINVERSION
echo
apt-get -y --force-yes install subversion libsvn-perl subversion-tools
echo -n "Would you like to install apache and the apache SVN modules? [y/N] "
read dav_svn_confirm
if [ "$dav_svn_confirm" == "y" -o "$dav_svn_confirm" == "Y" ]; then
echo Installing apache and subversion modules
apt-get -y --force-yes install apache2 libapache2-svn
echo -n "Installation complete. Restart apache? [y/N] "
read apache_restart_confirm
if [ $apache_restart_confirm == "y" -o $apache_restart_confirm == "Y" ]; then
/etc/init.d/apache2 restart
fi
fi
else
echo "Install Cancelled"
exit 1
fi
else
# Install SVN
echo "Subversion is not currently installed"
echo -n "Starting installation, are you sure you wish to continue? [y/N] "
read svn_install_confirm
if [ "$svn_install_confirm" == "y" -o "$svn_install_confirm" == "Y" ]; then
add_repo_config
echo
echo Installing Subversion $SVNVER-$MINVERSION
echo
apt-get -y --force-yes install subversion libsvn-perl subversion-tools
echo -n "Would you like to install apache and the apache SVN modules? [y/N] "
read dav_svn_confirm
if [ "$dav_svn_confirm" == "y" -o "$dav_svn_confirm" == "Y" ]; then
echo Installing apache and subversion modules
apt-get -y --force-yes install apache2 libapache2-svn libsvn-dev
echo -n "Installation complete. Restart apache? [y/N] "
read apache_restart_confirm
if [ $apache_restart_confirm == "y" -o $apache_restart_confirm == "Y" ]; then
/etc/init.d/apache2 restart
fi
fi
else
echo "Install Cancelled"
exit 1
fi
fi
}
install_32 ()
{
echo Installing for $ARCH
install_svn
}
install_64 ()
{
echo Installing for $ARCH
install_svn
}
#Main
check_is_root
echo Checking your system architecture.
if [ "$ARCH" == "i686" -o "$ARCH" == "i386" ]; then
install_32
elif [ "$ARCH" == "x86_64" ];
then
install_64
else
echo Unsupported platform: $ARCH
exit 1
fi