Utilizando subversion como controle de versão Utilizando subversion como controle de versão Subversion é um controle de versão free/open-source que permite armazenar documentos de qualquer natureza efetuando controle de acesso aos repositórios e mantendo as alterações através de um controle de revisões. Subversion pode ser usado para controlar alteração de diversos tipos de documentos, mas no momento estaremos voltados a demonstrar a sua utilização para melhorar o trabalho de desenvolvimento de software em equipes. Utilizando subversion como controle de versão A arquitetura proposta pelo subversion é semelhante a um cliente-servidor, no servidor temos os repositório dos arquivos que são armazenados em um banco de dados e diversos clientes que são utilizados para acessar os documentos. Utilizando subversion como controle de versão Os documentos são recuperados do repositório e armazenados localmente, após os documentos serem alterados pode-se submetê-los ao servidor, essa atividade altera o número da revisão do repositório. O número de revisão é seqüencial iniciando em 1 e incrementada a cada alteração dos documentos. Cada documento tem armazenado no repositório sua última situação e a situação em cada uma das revisões, desta forma podemos reverter qualquer alteração, podemos comparar o documento em com uma revisão específica. Utilizando subversion como controle de versão Através do subversion podemos administrar melhor as alterações nos documentos com diversos recursos que essa ferramenta oferece. Todo o conteúdo do repositório fica registrado, assim podemos saber em que revisão o documento foi alterado, quem alterou. Fica armazenada no repositório a situação do documento em cada uma das revisões. Cada revisão possui a data, hora e usuário que a efetuou. VICTOR Fazendo Funcionar com o Eclipse Partindo da ideia que que o o repositório on line já esteja configurado corretamente através do google code e que o SubEclipse esteja instalado corretamente: Entre na aba “Source”, na pagina principal do repositorio On Line. Lá, o que nos interessa é esta parte da página: Agora, vamos ao Eclipse. Neste momento, crie o projeto que deseja usar o SVN(se ainda não o fez). Depois, clique com o botão direito no nome do projeto, vá na Opção “Team”, e clique em “Share Project. Em “Share Project”, selecione o SVN, e clique em Next. Depois clique em “Create new repository location” para adicionar o seu repositório do Google Code. Agora, ele pedirá a url do repositório. Coloque o endereço circulado na imagem do início da página. Clique em Next. Clique em Next, depois em Finish. Agora, ele pedira sua conta no Google Code e sua senha. ATENÇÃO! A sua senha do Google Code NÃO é a senha da conta do Google. Se quiser ver qual é a senha entre em “Googlecode.com password”, no mesmo lugar que tem o endereço do repositório. Depois de digitada a senha, ele vai mostrar esta tela. Selecione todos os arquivos e diretórios e clique em OK. Após isso, temos já o projeto pronto no Google Code. Note que agora, se clicar em cima do nome do projeto com o botão direito e for em “Team”, terá várias opções a mais para fazer com o projeto e o repositório. WAGNER O que é um Get Lock. O Get Lock é quando um usuário precisa ter acesso a um arquivo, não permitindo que outro usuário venha modificar esse arquivo enquanto ele estar modificando ou realizando alterações, pra isso vamos usar o comando Get Lock. Usando um Get Lock. Var ate o arquivo que você deseja fazer a alteração e click com o botão direito do mouse tortoiseSVN e ao lado aparecera uma janela com várias opções escolha Get Lock como mostra o exemplo a seguir. Em seguida surgira outra janela para o usuário adicionar um comentário sobre o que ele estar realizando no momento no Get Lock. Após ter feito isso você dar commit no arquivo e faz um update. Pronto feito isso se qualquer outro usuário tentar realizar o commit não vai conseguir. Ralease lock. Liberamos o arquivo quando usamos a opção Release clicando com o botão direito do mouse na opção Tortoise SVN Ralease lock como mostra a seguir... Depois só é dar um Commit e um Update