Eu gostaria de instalar um servidor Subversion na minha máquina Ubuntu.
De quais pacotes eu preciso? Como crio um repositório e defino um novo usuário?
Eu gostaria de instalar um servidor Subversion na minha máquina Ubuntu.
De quais pacotes eu preciso? Como crio um repositório e defino um novo usuário?
Respostas:
Existem muitas configurações para o svn, aqui estão algumas breves instruções para obter um repositório básico do svn disponível em 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
Agora edite o arquivo vazio com esta configuração:
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
[seu repositório: /]
usuário = rw
Vamos tentar fazer o checkout do repositório via http: svn checkout http://your-server/svn/your-repository
checkout
ao contrário ceckout
?
Invalid command 'AuthzSVNAccessFile', perhaps misspelled or defined by a module not included in the server configuration
. Você pode usar o comando a2enmod authz_svn
para fazer isso.
Comece a ler o manual . Atualmente, estou fazendo o mesmo.
Depois de configurar um repositório svnadmin create /path/to/repo
, você pode usá svnserve --root /path/to/repo
-lo para disponibilizá-lo em svn://yourhost/
. Abra a porta TCP 3690, se necessário.
É possível usar o SVN sobre HTTP, mas ainda não li essa parte:
Você precisará do subversion
pacote.
sudo apt-get update
sudo apt-get install subversion
Este pacote contém o cliente, ferramentas para criar um repositório Subversion e o servidor.
Subversão
O Subversion é um sistema de controle de versão de código aberto.
você pode seguir este guia em help.ubuntu.com:
Aqui está uma postagem de blog da WANdisco sobre como instalar o Tortoise SVN 1.7 e fazer sua primeira alteração no repositório.
Para instalar o subversion, abra um terminal e execute o seguinte comando:
sudo apt-get install subversion libapache2-svn
Vamos criar o repositório do subversion em / svn, embora você deva escolher um local que tenha uma boa quantidade de espaço.
sudo svnadmin create /svn
Mude o proprietário deste repositório para usuário do Apache.
sudo chown -R www-data:www-data /svn
Crie um repositório básico do subversion para uso posterior (em Production / QA / Testing / Stating ../ etc ..)
sudo mkdir -p /tmp/myproject/trunk /tmp/myproject/tags /tmp/myproject/branches
Importe esses diretórios para o nosso repositório
sudo svn import /tmp/myproject file:///svn -m "initial import"
Em seguida, precisaremos editar o arquivo de configuração do módulo webdav do subversion. Você pode usar um editor diferente, se desejar.
sudo gedit /etc/apache2/mods-enabled/dav_svn.conf
O elemento Location no arquivo de configuração determina o diretório raiz de onde o subversion será acessível, por exemplo: http://www.server.com/svn
<Location /svn>
A linha DAV precisa ser descomentada para ativar o módulo dav
# Uncomment this to enable the repository,
DAV svn
A linha SVNPath deve ser definida no mesmo local em que você criou o repositório com o comando svnadmin.
# Set this to the path to your repository
SVNPath /svn
A próxima seção permitirá ativar a autenticação. Esta é apenas a autenticação básica, portanto, não a considere extremamente segura. O arquivo de senha estará localizado onde a configuração AuthUserFile o define como ... provavelmente é melhor deixá-lo no padrão.
# Uncomment the following 3 lines to enable Basic Authentication
AuthType Basic
AuthName “Subversion Repository”
AuthUserFile /etc/apache2/dav_svn.passwd
Para criar um usuário no repositório, use o seguinte comando:
sudo htpasswd -cm /etc/apache2/dav_svn.passwd <username>
Observe que você só deve usar a opção -c na primeira vez que criar um usuário. Depois disso, você desejará usar apenas a opção -m, que especifica a criptografia MD5 da senha, mas não recria o arquivo.
Exemplo:
sudo htpasswd -cm /etc/apache2/dav_svn.passwd geek
New password:
Re-type new password:
Adding password for user geek
Reinicie o apache executando o seguinte comando:
sudo /etc/init.d/apache2 restart
Obrigado: http://www.howtogeek.com/howto/ubuntu/install-subversion-with-web-access-on-ubuntu/