Como instalar e configurar o SVN no TDS

Olá pessoal…

Hoje vou mostrar para vocês como configurar e utilizar o SVN no TDS.

Recomendo que leia antes e execute os passos de como instalar um servidor SVN, que explico através desse link – Como instalar e configurar um servidor de subversão (SVN), nesse link também é explicado como funciona e o motivo de utilizarmos SubVersão no desenvolvimento de fontes.

Como BOA PRÁTICA, recomenda-se sempre ao iniciar um dia de serviço dar um UPDATE no projeto para pegar todas as alterações feitas, e após o término e validação do fonte, sempre dar um COMMIT para sempre o repositório estar atualizado.

Instalação dos plugins do SVN no TDS:

1. Clique em Ajuda > Instalar novo Programa.

Instalação de novos programas

Instalação de novos programas

2. Clique em Adicionar, o nome do repositório será Subversive e o link será http://download.eclipse.org/technology/subversive/1.1/update-site/.

Repositório Subversive

Repositório Subversive

3. Abra esse repositório adicionado, e cheque o recurso Subversive SVN Team Provider.

Plugin SVN Team Provider

Plugin SVN Team Provider

4. Abra novamente a instalação de novo Programa, e clique em Adicionar, o nome do repositório será Polarion, e o link será http://community.polarion.com/projects/subversive/download/eclipse/3.0/update-site/.

Repositório Polarion

Repositório Polarion

5. Escolha esse repositório, e escolha a instalação do recurso SVNKit 1.8.4 Implementation.

Plugin SVNKit

Plugin SVNKit

Criando um novo repositório no SVN

1. Primeiramente crie um novo repositório, no nosso caso, escolhemos o nome teste_tds.

Criando projeto no SVN

Criando projeto no SVN

2. Crie como um repositório em branco.

Escolhendo a opção repositório em branco

Escolhendo a opção repositório em branco

3. Anote o caminho do repositório.

Pegando o link do SVN

Pegando o link do SVN

4. Se desejar, abra o navegador, e veja se o repositório aparece lá.

Verificando no navegador o repositório criado

Verificando no navegador o repositório criado

Criando um novo projeto no SVN pelo TDS

1. Pelo TDS, clique com o botão direito na área de navegação de fontes, e vá em Novo Projeto.

Opção Novo Projeto

Opção Novo Projeto

2. Selecione a opção Project from SVN.

Escolhendo projeto do SVN

Escolhendo projeto do SVN

3. Coloque os dados de conexão (como usuário e senha).

Inserindo as informações

Inserindo as informações

4. Confirme a url, e coloque a revisão como a revisão atual (Head Revision).

Confirmando os dados

Confirmando os dados

5. Na tela de checkout, cheque a opção que irá utilizar um novo projeto.

Checando como um novo projeto

Checando como um novo projeto

6. Escolha a opção Projeto TOTVS

Colocando como Projeto TOTVS

Colocando como Projeto TOTVS

7. Defina um nome para o Projeto, e prossiga.

Definindo um nome para o projeto

Definindo um nome para o projeto

8. Finalizando, o projeto será criado.

Projeto criado

Projeto criado

Adicionando um projeto já criado no SVN no TDS

1. Para importar um projeto que já existe no SVN, clique em Novo Projeto.

Opção de Novo Projeto

Opção de Novo Projeto

2. Selecione a opção, Projeto do SVN

Projeto do SVN

Projeto do SVN

3. Coloque as definições do svn e prossiga.

Definindo dados do projeto

Definindo dados do projeto

4. Escolha a revisão atual (head Revision)

Setando a revisão

Setando a revisão

5. Escolha a opção de baixar conforme o nome do projeto especificado.

Pegando do projeto já existente

Pegando do projeto já existente

6. Deixe checado a workspace default

Definindo workspace padrão

Definindo workspace padrão

7. Agora é só utilizar seu projeto

Projeto importado

Projeto importado

Utilizando o SVN no TDS

Quase tudo que podemos utilizar no SVN, fica no menu Equipe, do TDS.

Menu Equipe

Menu Equipe

Caso você queira substituir todos os fontes para o mais recente (se tiver algum fonte com bug), use o Substituir por Latest from Repository. Ele é diferente do UPDATE, o update baixa os fontes e faz um merge, mantendo que você ainda não commitou no projeto, o Replace, ele pega tudo que tem no server, e substitui no seu projeto, SÓ USE ELE SE REALMENTE ESTIVER COM PROBLEMAS EM ALGUM RECURSO.

Substituir pela última versão do Repositório

Substituir pela última versão do Repositório

Para enviar as alterações ao servidor, utilizamos a opção Commit. E para baixar, utilizamos a opção Update.

Dando um commit nos fontes

Dando um commit nos fontes

Quando existe algum fonte ou pasta sem commitar ou com alguma alteração pendente, é mostrado um sinal de “>” antes do arquivo.

Fontes que faltam commitar para o servidor

Fontes que faltam commitar para o servidor

Para verificar um histórico de fontes, clique com o botão direito na pasta ou fonte, e vá em Equipe > Show History. Caso queira comparar alguma revisão, clique com o botão direito no dia do commit, e depois em comparar.

Menu para comparação de fontes

Menu para comparação de fontes

A comparação, mostra dos dois lados, os fontes, e as alterações que tiveram entre si.

Fontes sendo comparados

Fontes sendo comparados

Por último, se precisar, no servidor SVN, você consegue ver tabmém que existem fontes e pastas lá dentro.

Print do repositório no SVN

Print do repositório no SVN

Bom pessoal, por hoje é só.
Abraços e até a próxima.

Dan (Daniel Atilio)
Cristão de ramificação protestante. Especialista em Engenharia de Software pela FIB, graduado em Banco de Dados pela FATEC Bauru e técnico em informática pelo CTI da Unesp. Entusiasta de soluções Open Source e blogueiro nas horas vagas. Autor e mantenedor do portal Terminal de Informação.

22 Responses

  1. Rodrigo R Fernandes disse:

    Ótimo material! Parabéns

  2. Top Dan. Vc prefere o SVN ou GitHub para trabalhar com o Protheus?

    • Dan_Atilio disse:

      Então Ronaldo, depende de cada contexto.
      Para um ambiente corporativo que tenha segredos em fontes (como senhas de acesso), não recomendo utilizar o GitHub, já que esses fontes estarão disponíveis no Google, talvez seja ideal utilizar outro serviço como o BitBucket, ou como citei instalar um servidor de SVN.
      Para se ter uma noção, um dia procurando um ponto de entrada no Google, achei todos os fontes de uma empresa grande (grande mesmo), na época que eu era analista da TOTVS, todos esses fontes estavam liberados para qualquer um ver, sendo que tinha senhas nos fontes, e-Mails, acesso ao FTP, etc…
      Espero ter ajudado.
      Um grande abraço.

  3. Eduardo disse:

    Como você fez para aplicar esse tema escuro no IDE?

  4. Alexsandro Jesus disse:

    Caro Dan,
    estou tentando aplicar o segundo link para instalar o plugin do Polarion. No entanto a url http://community.polarion.com/projects/subversive/download/eclipse/3.0/update-site/ parece ter sido desativada!
    Tem alguma sugestão?

  5. John Lennon disse:

    Parabéns! Irei seguir estas orientações para fazer uns teste aqui. Continue sempre assim com estes conteudos tão úteis. Vlw

  6. Ghandy disse:

    Dan boa noite!
    Eu tenho um servidor SVN instalado e funcionando com Delphi.
    Segui todos os passos e fiz a instalação no TDS, mas quando vou fazer um Commit, ele não mostra nenhum recurso na parte de baixo da tela e me dá a mensagem “At least one resource should be selected.”

    Quando eu vou nas propriedades do projeto, no item SVN Info, lá mostra o Resource URL: https://meuip/projeto.

    Você tem idéia do que está acontecendo?

    Desde já agradeço.
    []’s

    • Dan_Atilio disse:

      Bom dia Ghandy, tudo bem?
      Realmente nunca vi um cenário desse. No caso do seu servidor SVN, você está usando um repositório exclusivo pro TDS?
      Abraços.

      • Ghandy disse:

        Dan_ bom dia!
        Não, meu repositório não é exclusivo, mas acabei “resolvendo” o problema.
        O que acontece é que eu não tinha alterado nenhum código e acho que por isso ele não aparecia, quando eu fiz uma alteração no código fonte, daí apareceu normalmente.

        Obrigado!

  7. Day Rocha disse:

    Dan, não consigo conectar meu projeto com o SVN, coloco o usuario e senha e não autentica.
    Pode me ajudar??

  8. Thiago Rasmussen disse:

    Devido essa particularidade da TOTVS de controlar os fontes por data/hora conforme o RPO, qual ferramenta de controle de fontes possa utilizar e que tem essa particularidade de preservar a data/hora dos arquivos ao realizar um commit?

    Obrigado.

  9. Alex da Silva disse:

    Dan existe a possibilidade de integrar o SVN com uma aplicação web que eu desenvolvi? Por exemplo, tenho um software web de helpdesk, será que consigo cruzar informações do SVN com o meu helpdesk?

    • Dan_Atilio disse:

      Bom dia.
      Você poderia exemplificar melhor?
      Por exemplo, o SVN ou outros controladores de versionamento, você pode usar para controlar fontes, por exemplo, se seu portal web for em php, você controlaria isso com commits / updates, etc.

  10. Thiago Rasmussen disse:

    Boa tarde Dan_Atilio.

    Perfeito tanto o GIT, quanto o SVN guardam a data/hora do commit! O que eu estou querendo é preservar a data/hora do arquivo. Para que ao comparar a data do RPO com a data do arquivo no repositório de fontes, elas sejam idênticas, já que esse ainda é o controle de fontes realizado pela TOTVS, comparar data do arquivo com a data do RPO.

Deixe uma resposta para GhandyCancelar resposta

Terminal de Informação