SVN Básico
description
Transcript of SVN Básico
SVNbásicoUm guia para começar a utilizar o Subversion
O que é o Subversion?Máquina do tempo
Software de controle de versões open source/livre que proporciona a capacidade de vários desenvolvedores modificarem e gerenciarem os mesmos arquivos do projeto mesmo estando em máquinas diferentes.
Porque uma máquina do tempo?! Pois ao utilizar o Subversion temos cada versão do nosso arquivo gravada ao ser modificada e se algo der errado você pode simplesmente voltar para uma versão anterior.
Empresa Júnior de Computação da UnB
DIRTI - Diretoria de Tecnologia da Informação
Conceitos Repositório
É uma central de armazenamento de dados. É como o servidor que armazena o projeto atual e os arquivos
antigos que foram modificados na nova versão.
Versionamento É a prática de armazenar as versões anteriores de arquivos
modificados além da atual, criando assim uma árvore (revision tree) na qual os galhos (branchs) são versões diferentes dos arquivos.
Cópia local X Cópia de trabalho A cópia de trabalho será aquela armazenada no servidor. “É a
versão atual do projeto”. Cópia local será uma versão da cópia de trabalho que o usuário
baixa para o seu próprio HD.
Empresa Júnior de Computação da UnB
DIRTI - Diretoria de Tecnologia da Informação
Problema O que acontece se dois usuários modificam o mesmo arquivo ao
mesmo tempo?
Resposta A versão do último usuário a enviar o arquivo será a versão final e o
trabalho do outro usuário ficará “escondido em uma versão anterior”.
Empresa Júnior de Computação da UnB
DIRTI - Diretoria de Tecnologia da Informação
O copy-modify-merge O copy-modify-merge é um modelo de utilizado pelo Subversion para
contornar o problema apresentado no slide anterior.
Como funciona: Cada usuário faz uma cópia local da cópia de trabalho. Os usuários então editam apenas a sua cópia local do arquivo. Ao mandar o arquivo para o repositório serão fundidas as cópias
de trabalho e cópia local.
Além do copy-modify-merge temos o lock-modify-unock mas este modelo possui mais problemas. (Apesar de ser mais apropriado para trabalhar com arquivos binários).
Empresa Júnior de Computação da UnB
DIRTI - Diretoria de Tecnologia da Informação
Situação Os usuários 1 e 2 fazem suas cópias locais do arquivo e trabalham nele. Então “1” grava a sua versão no repositório. Quando “2” for tentar gravar o dele receberá o erro “out-of-date” indicando
que o seu arquivo está desatualizado.Cabe então a “2” pedir ao software que faça o “merge” (fundir os arquivos). Como as alterações não se sobrepõem o usuário precisará apenas gravar no servidor esta nova versão que será uma fusão dos arquivos de “1” e “2”.
E se os arquivos se sobrepõem? O software indicará conflito e ao fazer o “merge” manterá esta parte do código de
ambos os arquivos no arquivo fundido. Cabe aos usuários decidir a versão mais adequada e retirar a outra. (O programa não
tem como fazer isso automaticamente).
Empresa Júnior de Computação da UnB
DIRTI - Diretoria de Tecnologia da Informação
Empresa Júnior de Computação da UnB
DIRTI - Diretoria de Tecnologia da Informação
Comandos básicos Checkout - Baixar
O checkout deve ser dado no início do projeto para baixar a cópia de trabalho para sua cópia local.
Update - Atualizar O update é utilizado quando a sua cópia está desatualizada (out-
of-date). Depois de feito o update será indicado se existem conflitos nos seus arquivos.
Merge – Fundir Caso o seu arquivo esteja desatualizado você poderá realizar o
merge para juntar o seu arquivo com a versão atual da cópia de trabalho.
Commit – Upar Após realizadas as alterações em sua cópia local tiverem sido
feitas você deve enviá-las para o repositório utilizando o commit.
Empresa Júnior de Computação da UnB
DIRTI - Diretoria de Tecnologia da Informação
Clientes TortoiseSVN (W) – fica integrado ao Windows Explorer
RapidSVN (W,L,M) – Possui uma interface própria
Subeclipse (W,L,M) – Integrado a plataforma de desenvolvimento Eclipse
Empresa Júnior de Computação da UnB
DIRTI - Diretoria de Tecnologia da Informação
Instalando o subeclipse O subeclipse é um plugin para adicionar a SVN na IDE multi-
linguagens eclipse.
Para instalar o subeclipse você deve:1. Abrir o eclipse2. Ir para Ajuda (help) -> Instalar novo software (Install new software)3. Em “work with” você deve selecionar a opção: “Subclipse 1.6.x Update Site -
http://subclipse.tigris.org/update_1.6.x”4. Selecionar os pacotes que você deseja (obrigatóriamente o subeclipse)5. Continuar normalmente com a instalação.
*A instalação dos outros softwares mencionados é comum.
Empresa Júnior de Computação da UnB
DIRTI - Diretoria de Tecnologia da Informação
Dúvidas?
Renato [email protected]
Diretor de Tecnologia da Informação+55 (61) 9994-2312
______________________________CJR - Empresa Júnior de Computação
+55 (61) 8447-8868 / 3107-6400www.cjr.org.br
Empresa Júnior de Computação da UnB
DIRTI - Diretoria de Tecnologia da Informação