svn básico

11
SVNbásic o Um guia para começar a utilizar o Subversion

Upload: cjr-unb

Post on 11-Jun-2015

1.387 views

Category:

Education


6 download

DESCRIPTION

Aquilo que você deve saber para utilizar o básico de sua SVN.

TRANSCRIPT

Page 1: SVN Básico

SVNbásicoUm guia para começar a utilizar o Subversion

Page 2: SVN Básico

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

Page 3: SVN Básico

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

Page 4: SVN Básico

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

Page 5: SVN Básico

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

Page 6: SVN Básico

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

Page 7: SVN Básico

Empresa Júnior de Computação da UnB

DIRTI - Diretoria de Tecnologia da Informação

Page 8: SVN Básico

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

Page 9: SVN Básico

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

Page 10: SVN Básico

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

Page 11: SVN Básico

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