Sem necessidade para um blog

SVN com VisualSVN Server e TortoiseSVN

Um sistema de controle de versão é software que auxilia nas diferentes versões de desenvolvimento de um documento. Ele é muito utilizado para gerenciar os códigos fontes e a documentação de sistemas em desenvolvimento, especialmente quando se tem equipes trabalhando num mesmo projeto, como acontece em empresas de desenvolvimento e no mundo do software livre. Mas mesmo se a equipe for só você, é possível se beneficiar de um sistema de controle de versões.

Neste artigo não vou mostrar que o controle de versão não é só update e commit, e nem apresentarei um tutorial do svn que vamos utilizar. Mostrarei como instalar e usar o servidor VisualSVN Server junto com a ferramenta TortoiseSVN para criar um repositório SVN em sua máquina. Caso queira mais informações sobre o assunto pode ver na wikipedia o artigo sobre Sistema de controle de versão que é bem completo.

TortoiseSVN

Para começar, baixe e instale o TortoiseSVN. Sua instalação é bem simples e não tem nenhum segredo. Se a equipe for só você, já bastaria isso para começar a usar o svn em seus projetos.

Vá pelo windows explorer que é mais fácil. Crie um diretório vazio para ser seu repositório e clique com o botão direito, no menu escolha TortoiseSVN e depois Create Repository Here

Criando repositório usando o TortoiseSVN

Simples não? Agora clique com o botão direito sobre seu repositório e vá em Tortoise e Repo Browser. Vai aparecer o seu repositório e aqui você já pode começar a adicionar seus arquivos. Recomendo apenas seguir um padrão para separar os projetos e diretórios, como o exemplo abaixo. Estes e outros são descritos no help do próprio TortoiseSVN.

Visualizando o seu repositório

VisualSVN Server

Se você trabalha com uma equipe de desenvolvedores, além do TortoiseSVN instalado você precisará de um servidor de verdade para o SVN. O que eu recomendo para os que usam o Windows é o VisualSVN Server, que é muito fácil de instalar e configurar.

Durante a instalação do VisualSVN Server, ele pergunta qual o diretório de instalação do aplicativo, qual o diretório dos seus repositórios, qual a porta do servidor e se deve usar conexão encriptada e ainda o método de autenticação de usuários, podendo escolher um em que o programa gerencia os usuários ou a autenticação de rede do windows. Faça as escolhas que melhor atenda suas necessidades.

Se tudo correr bem o serviço é automaticamente iniciado e você já pode criar seus repositórios. Clique com o botão direito em cima de repositories e escolha Create New Repository, dê um nome bacana pra ele e pronto. Como eu gosto de criar um repositório para todos os meus projetos, eu desmarco a caixa Create Default Structure.

Para usar seu repositório ainda falta dar permissão para os usuários. Caso você tenha escolhido que o programa vai manter a lista de usuários dele, botão direito em Users e escolha Create User. Quando você diz para usar os usuários do windows você deve adicionar os usuários de maneira parecida.

Em seguida, selecione o seu repositório, clique com o botão direito e escolha Copy URL to clipboard, clique com o direito em alguma janela do windows explorer como o seu desktop e em TortoiseSVN escolha Repo-browser. Cole o endereço e aperte ok. A tela que apararece em seguida diz que houve um erro ao validar o certificado do servidor, nesse caso não há problema em aceitar permanentemente clicando em Accept permanently. Coloque nome e senha do usuário que você deu permissão no VisualSVN e pronto, já pode começar a utilizar seu servidor junto com os outros usuários :).

Ainda com a URL para o seu repositório, você pode visualizar o conteúdo via browser, bastando colar a URL na barra de endereços, aceitar o certificado e digitar o nome e a senha do usuário, da mesma maneira que no TortoiseSVN.

Conclusão

Espero que este artigo consiga ajudar as pessoas a criar com mais facilidade um repositório SVN para auxiliar no desenvolvimento das aplicações. E lembrem-se de fazer backup dos seus repositórios crianças! Nunca se sabe quando seu HD vai pro espaço não é? :D

10 comentários para “SVN com VisualSVN Server e TortoiseSVN”

  1. josetadeude sales disse:

    Por favor! tenha uma pergunta?
    Esse blog é pago ou grátis?

  2. dudaskank disse:

    Olá josetadeude

    Não entendi direito a pergunta… mas vou tentar responder :p

    Você quer saber do provedor que uso? É grátis sim mas tem planos pagos também.

    Se o blog em si é pago? Bom tem essas propagandas que diz a lenda podem dar algum dinheiro quando o pessoal clica nelas, mas meu blog tem tão pouca visita que estou pensando em tirá-las rsrsrs. Mas o conteúdo é tudo grátis, não precisa pagar pra ver, mas se quiser fazer uma doação eu aceito hehehe.

    Abraços

  3. José Roberto Siqueira disse:

    Olá Duda! Li e reli este tópico várias vezes e segui os procedimentos que você detalha. Existem algumas dúvidas como por exemplo, saber para que servem as várias pastas que são criadas pelo Tortoise após selecionar o Repo Browser e também como fazer para que o VisualSVN Server aponte para meu servidor e existem outras. Você pode indicar algum livro, site ou algum lugar que tenha uma literatura mais abrangante para quem tem interesse em dominar o TortoiseSVN? Grato

  4. dudaskank disse:

    Olá José, obrigado pela visita :)

    Bom, este artigo é mais superficial e não entra nestes detalhes, porém você pode seguir os links do 2º parágrafo. Neles você encontra uma visão geral do porque destes diretórios e várias outras coisas.

    Não entendi a dúvida de apontar o VisualSVN Server para seu servidor, pois este software é o próprio servidor. Se você está tentando usá-lo como cliente, na verdade o que você precisa é do Tortoise SVN.

    Um livro que indico é o “Controle de versão com Subversion”, que você encontra aqui: http://svnbook.red-bean.com/index.pt_BR.html. Este livro fala do SVN em geral, não só do Tortoise ok.

    Abraços

  5. José Roberto Siqueira disse:

    Olá Duda! Muito obrigado pela dica do livro. Estou baixando os arquivos e irei ler as informações que lá constam. Abraço

  6. david disse:

    muito bom o mas eu não consigo fazer as restrições para os usuarios, eu já cadastrei e adicionei aos respectivos repositorios, mesmo assim estão podendo fazer qualquer tipo de modificação
    alguma ajuda???
    Obrigado

    David

  7. Nelson A Jr. disse:

    Bem comentado e com imagens não tem erro é só seguir esse tuto. Parabéns! Muito obrigado me ajudou bastante.

  8. Rita de Cássia disse:

    Muito bom mesmo….Parabéns!

  9. Leonardo disse:

    Oi instalei somente o VisualSVN Server, a pasta da repositorio esta fora do pasta apache>htdocs, no console eu crio um novo repositorio com projeto e subpastas branches,trunks… mas no disco fisico estas pastas nao aparecem, como faco para colocar meus scripts ja que as pastas nao existem e nao é permitido adicionar sem ser pelo console?

  10. dudaskank disse:

    Leonardo, é assim mesmo, você não consegue gravar arquivos diretamente pelo “salvar” do menu arquivo do word por exemplo.

    Depois que você criar o seu repositório, você deve usar uma outra ferramenta para fazer gravar e ler desse repositório. Recomendo o TortoiseSVN (http://tortoisesvn.tigris.org/)

    Primeiro da um “obter módulo” e configure as informações que ele pede, daí vai baixar e criar um diretório. Vai perceber que é um diretório diferente pela cor verde em cima dele, isso indica que é usado para o controle de versões. Nesse diretório sim, você pode salvar, editar, apagar e fazer o que quiser com os arquivos, aí é só clicar com o botão direito e comitar, ou fazer o que você quiser em relação aos arquivos.

    Depois de comitar, se apagar esse diretório (não o do repositório em si, o que foi baixado pela ferramenta TortoiseSVN), excluir um arquivo ou salvar uma versão errada, é fácil de recuperar, pois está todo o histórico no repositório. Pode restaurar a última versão, pegar uma versão anterior, comparar com outras versões, entre outras coisas.

    Um link para entender mais o svn que recomendo é o livro Controle de Versão com Subversion (http://svnbook.red-bean.com/).

Deixe um comentário