SVN

Instalando SVN no CentOS 5.6

Postado em Atualizado em

SVN é um sistema de controle de versão open source, que permite o controle de projetos através da criação de repositórios especificos. Hoje vamos aprender como instalá-lo, e criar os repositórios iniciais.

Quando solicitamos ao yum instalar o modulo “mod_dav_svn” o yum procurará a dependências que serão os serviços: httpd(apache) e subversion.

 yum install mod_dav_svn

Após o fim da instalação, vá até  cd /etc/httpd/conf.d/, e crie o arquivo subversion.conf, adicionando o  seguinte conteúdo:

#Primeiro Repositorio

<Location /nomerepositorio1>
 DAV svn
 SVNPath /var/www/svn/nomerepositorio1
 AuthType Basic
 AuthName "Repositorio Exemplo1"
 AuthUserFile /etc/svn-auth-conf
 AuthzSVNAccessFile /etc/svn-acl-conf
 Require valid-user
</Location>

#Segundo Repositorio
<Location /nomerepositorio2>
 DAV svn
 SVNPath /var/www/svn/nomerepositorio2
 AuthType Basic
 AuthName "Repositorio Exemplo2"
 AuthUserFile /etc/svn-auth-conf
 AuthzSVNAccessFile /etc/svn-acl-conf
 Require valid-user
</Location>

As tags acima realizam a configuração inicial nos repositórios, como configuração  de caminho ( SVNPath ), tipo de autenticação ( AuthType ) e arquivo de autenticação ( AuthUserFile ).
Como podemos ver a tag AuthUserFile, aponta para o arquivo a onde estão armazenadas as credenciais de acesso aos repositórios.

Para adicionar usuários, digite os comando abaixo:

 htpasswd -cm /etc/svn-auth-conf eusouadmin     ( Adiciona o Usuário Master/Admin)
 htpasswd -m /etc/svn-auth-conf   eusounormal   ( Adiciona um Simples Usuário: desenvolver, dba, etc )
 htpasswd -m /etc/svn-auth-conf   eusounormaldba

Se desejar remover o usuário criado digite:

 htpasswd -D /etc/svn-auth-conf nomedousuairo  ( Remove Usuário Criado )

Agora vamos criar o repositório, que armazenará os nossos projetos. Navegue até cd /var/www/ e execute os seguintes comandos:

 mkdir svn
 cd svn
 svnadmin create nomerepositorio1
 chown -R apache.apache nomerepositorio1

 svnadmin create nomerepositorio2
 chown -R apache.apache nomerepositorio2

 

 service httpd restart

Pronto, os repositórios estão criados, agora devemos criar a politíca inicial de acesso.

Crie o arquivo /etc/svn-acl-conf, e adicione o conteúdo abaixo:

[groups]
 admin = eusouadmin
 developers =eusounormal
 dba = eusounormaldba

[/]
 @developers = rw
 @dba = r

[/nomerepositorio1]
 @developers = rw
 @dba = r

[/nomerepositorio2]
 @developers = r
 @dba = rw

Bom é isso, salve o arquivo reinicie o Apache . Lembre-se de Liberar o Firewall do CentOS para aceitar conexões HTTP, você poderá visualizar os repositórios e seus respectivos arquivos utilizando o browser.

Aqui no trabalho, nós utilizamos o SVN no CentOS em conjunto com o Eclipse e o plugin http://subclipse.tigris.org.

Espera que seja util
Abraços!

Fonte: http://subversion.tigris.org/