Busca


imprimir pdf

SVN em Partilhado


DESCRIÇÃO

Subversion (svn abreviado) é um sistema de gestão de versões. Este guia mostra-nos como usar o acesso svn através de ssh com a chave pública e privada. (Deve aceder com o ssh). O seguinte guia assume que está ligado por SSH à raiz do seu alojamento.

Pré-requisitos


  • Possuir um alojamento que permita ligação SSH
  • Saber utilizar uma ligação por SSH

CRIAÇÃO DO REPOSITÓRIO

Uma vez conectado por SSH ao seu alojamento, deve criar o diretório raiz do repositório SVN e depois depositá-lo.
Apenas escreva o domínio:

mkdir svn
e
svnadmin create svn/depot_test

Pode verificar que a directoria foi criada com o seguinte comando:
ls -la

Deve obter os directórios como mostrado na figura abaixo:

CRIAÇÃO DA CHAVE PÚBLICA /PRIVADA (Linux openssh)

Esta parte tem lugar no computador através do qual se conecta ao repositório SVN (svn cliente). Temos de criar então uma chave RSA. Para fazer isso digite o comando no terminal:
ssh-keygen -t rsa
e insira a linha que está localizada por defeito no ficheiro:
vi .ssh/id_rsa.pub
Irá constatar que a chave está dividida em 3 textos : o tipo, a chave e o comentário..

CRIAÇÃO DA CHAVE PÚBLICA /PRIVADA(Windows with putty)

Esta parte tem lugar no computador através do qual se conecta ao repositório SVN (svn cliente).
Para fazer o download e instalar o putty. (http://the.earth.li/~sgtatham/putty/latest/x86/putty-0.60-installer.exe)
Deve criar um par chave de RSA. Para iniciar este PuTTYGen, gerar uma par de chaves e salvar:


ADICIONANDO A CHAVE AO ALOJAMENTO PÚBLICO

Após ter recebido a chave deve adicioná-la no seu alojamento em .ssh/authorized_keys2. Simplesmente insira a linha de comando abaixo:
mkdir .ssh
chmod 700 .ssh
vi .ssh/authorized_keys2
Uma vez que o ficheiro está aberto deverá inserir a seguinte linha:
command="/usr/bin/svnserve --root=/homez.XXX/loginFTP/svn --tunnel --tunnel-user=marc",no-port-forwarding,no-agent-forwarding,no-X11-forwarding,no-pty
E a seguir introduza a chave que criou anteriormente, tudo na mesma linha!

NB : Substitua "/homez.XXX/loginFTP" e "mark" com o que é! Para saber qual o homez e login FTP, basta no alojamento efetuar o seguinte comando: pwd

A pessoa pode, assim, obter o conteúdo do repositório, sem necessariamente ser capaz de se conectar directamente por SSH à sua máquina.


EXEMPLO (Linux)


Pode fazer um teste através do computador conectado para o repositório svn, ao digitar esta linha:
svn checkout svn+ssh://login@ftp.xxlplan.ovh.net/depot_test


EXEMPLO (Windows com TortoiseSVN)

Faça o download e instale TortoiseSVN (http://tortoisesvn.net/downloads)
Faça duplo click na chave privada. Um ícone aparecerá na parte inferior direita, chave é carregada para a autenticação do agente:
Crie a directoria, botão direito do rato e seleccione "SVN Checkout". Insira
svn+ssh://login@ftp.xxlplan.ovh.net/depot_test
no campo "URL of repository" e clique OK:



Esta é uma boa documentação de Subversion: http://svnbook.red-bean.com/en/1.5/index.html

Criar várias contas

Basta criar várias chaves ssh.
De seguida adiciona a chave pública em 1 alojamento:
command="/usr/bin/svnserve --root=/homez.XXX/loginFTP/svn --tunnel --tunnel-user=marc",no-port-forwarding,no-agent-forwarding,no-X11-forwarding,no-pty


Deve modificar o parâmetro em cima ao adicionar vários utilizadores:
--tunnel-user


de notar que é ainda possível dar apenas acesso de leitura ao adicionar o seguinte parâmetro:
--read-only.