Vorrei installare un server Subversion sul mio computer Ubuntu.
Di quali pacchetti ho bisogno? Come posso creare un repository e impostare un nuovo utente?
Vorrei installare un server Subversion sul mio computer Ubuntu.
Di quali pacchetti ho bisogno? Come posso creare un repository e impostare un nuovo utente?
Risposte:
Esistono molte configurazioni per svn, qui alcune brevi istruzioni per ottenere un repository svn di base disponibile su http.
apt-get install subversion apache2 libapache2-svn
mkdir -p /var/svn/repos/
cd /var/svn/repos/
svnadmin create --fs-type fsfs <your-repository>
mkdir -p /tmp/myproject/trunk /tmp/myproject/tags /tmp/myproject/branches
svn import /tmp/myproject file:///var/svn/repos/<your-repository> -m "initial import"
cd /etc/apache2/sites-available
touch subversion.conf
vim subversion.conf
Ora modifica il file vuoto con questa configurazione:
NameVirtualHost *:80
<VirtualHost *:80>
<Location /svn>
ErrorDocument 404 default
DAV svn
SVNParentPath /var/svn/repos
SVNListParentPath off
Require valid-user
AuthType Basic
AuthName "subversion access"
AuthUserFile /var/svn/.htpasswd
AuthzSVNAccessFile /var/svn/authz
</Location>
</VirtualHost>
a2enmod dav_svn
a2enmod authz_svn
a2ensite subversion.conf
/etc/init.d/apache2 restart
htpasswd -c /var/svn/.htpasswd user
touch /var/svn/authz
vim /var/svn/authz
[Your-repository: /]
utente = rw
Proviamo a controllare il repository su http: svn checkout http://your-server/svn/your-repository
checkout
al contrario ceckout
?
Invalid command 'AuthzSVNAccessFile', perhaps misspelled or defined by a module not included in the server configuration
. È possibile utilizzare il comando a2enmod authz_svn
per fare questo.
Inizia a leggere il manuale . Attualmente sto facendo lo stesso.
Dopo aver impostato un repository con svnadmin create /path/to/repo
, è possibile utilizzare svnserve --root /path/to/repo
per rendere disponibile il repository all'indirizzo svn://yourhost/
. Aprire la porta TCP 3690 se necessario.
È possibile utilizzare SVN su HTTP, ma non ho ancora letto quella parte: o
Avrai bisogno del subversion
pacchetto.
sudo apt-get update
sudo apt-get install subversion
Questo pacchetto contiene il client, gli strumenti per creare un repository Subversion e il server.
Sovversione
Subversion è un sistema di controllo della versione open source.
puoi seguire questa guida da help.ubuntu.com:
Ecco un post sul blog di WANdisco su come installare Tortoise SVN 1.7 e apportare la prima modifica al repository.
Per installare sovversione, aprire un terminale ed eseguire il comando seguente:
sudo apt-get install subversion libapache2-svn
Creeremo il repository di sovversione in / svn, anche se dovresti scegliere una posizione che abbia una buona quantità di spazio.
sudo svnadmin create /svn
Cambia il proprietario di questo repository in utente Apache.
sudo chown -R www-data:www-data /svn
Creare un repository di sovversione di base per un uso successivo (per produzione / QA / Test / Stating ../ etc ..)
sudo mkdir -p /tmp/myproject/trunk /tmp/myproject/tags /tmp/myproject/branches
Importa quella directory nel nostro repository
sudo svn import /tmp/myproject file:///svn -m "initial import"
Successivamente dovremo modificare il file di configurazione per il modulo webdav di subversion. Se lo desideri, puoi utilizzare un editor diverso.
sudo gedit /etc/apache2/mods-enabled/dav_svn.conf
L'elemento Location nel file di configurazione determina la directory principale da cui sarà possibile accedere alla sovversione, ad esempio: http://www.server.com/svn
<Location /svn>
La linea DAV deve essere decommentata per abilitare il modulo dav
# Uncomment this to enable the repository,
DAV svn
La riga SVNPath deve essere impostata nello stesso posto in cui è stato creato il repository con il comando svnadmin.
# Set this to the path to your repository
SVNPath /svn
La sezione successiva ti permetterà di attivare l'autenticazione. Questa è solo un'autenticazione di base, quindi non considerarla estremamente sicura. Il file della password si troverà dove l'impostazione AuthUserFile lo imposta su ... probabilmente è meglio lasciarlo sul valore predefinito.
# Uncomment the following 3 lines to enable Basic Authentication
AuthType Basic
AuthName “Subversion Repository”
AuthUserFile /etc/apache2/dav_svn.passwd
Per creare un utente nel repository usare, il seguente comando:
sudo htpasswd -cm /etc/apache2/dav_svn.passwd <username>
Si noti che è necessario utilizzare solo l'opzione -c la PRIMA volta che si crea un utente. Successivamente, dovrai solo utilizzare l'opzione -m, che specifica la crittografia MD5 della password, ma non ricrea il file.
Esempio:
sudo htpasswd -cm /etc/apache2/dav_svn.passwd geek
New password:
Re-type new password:
Adding password for user geek
Riavvia apache eseguendo il comando seguente:
sudo /etc/init.d/apache2 restart
Grazie: http://www.howtogeek.com/howto/ubuntu/install-subversion-with-web-access-on-ubuntu/