Anda di halaman 1dari 30

Tutorial Subversion

Controle de Versões com


Subversion

Sidney Batista Filho

20/9/2008

Versão 1.0
Tutorial Subversion

Sumário
1. Licenciamento de Uso......................................................................................................................4
2. Histórico deste documento................................................................................................................4
3. Objetivo.............................................................................................................................................6
4. Introdução ao Subversion.................................................................................................................6
4.1. Definição...................................................................................................................................6
4.2. Visão Geral do Subversion........................................................................................................6
4.2.1. Arquitetura do Subversion..................................................................................................6
4.2.2. Ciclo de trabalho Básico....................................................................................................7
4.2.3. Check Out..........................................................................................................................7
4.2.4. Atenção: Usar comandos do Subversion!..........................................................................8
4.3. Organização para o trabalho colaborativo: comunicação..........................................................8
5. Visão Geral sobre os Exemplos deste Tutorial.................................................................................9
5.1. Servidor do Subversion Usado como Exemplo..........................................................................9
5.2. Clientes do Subversion..............................................................................................................9
5.2.1. Dados do projeto TesteSubversion....................................................................................9
5.2.2. Senha do usuario do projeto TesteSubversion..................................................................9
5.3. Exemplo 1: Livro de Visitas.....................................................................................................10
5.3.1. Visão geral do exemplo Livro de Visitas..........................................................................10
6. Cliente Eclipse: ciclo de trabalho básico.........................................................................................11
6.1. Definição.................................................................................................................................11
6.2. Instalação................................................................................................................................11
6.3. Criação da Cópia Local de Trabalho.......................................................................................11
6.4. Exemplo 1: Livro de Visitas.....................................................................................................15
6.4.1. Visão geral do exemplo Livro de Visitas..........................................................................15
6.4.2. Detalhamento do exemplo Livro de Visitas (passo a passo)............................................15
6.5. Exemplo 2: Criação de Diretórios e Arquivos..........................................................................16
7. Cliente TortoiseSVN: ciclo de trabalho básico................................................................................17
7.1. Definição.................................................................................................................................17
7.2. Instalação................................................................................................................................17
7.3. Criar a cópia de trabalho local ................................................................................................18
7.4. Ícones do TortoiseSVN............................................................................................................20

©2007-2008 – Sidney Batista Filho – http://geocities.com/sidneybatistafilho/


Tutorial Subversion

7.5. Exemplo 1: Livro de Visitas.....................................................................................................20


7.5.1. Visão geral do exemplo Livro de Visitas..........................................................................20
7.5.2. Detalhamento do exemplo Livro de Visitas (passo a passo)............................................20
7.6. Exemplo 2: criação de diretórios e arquivos............................................................................23
8. Cliente NetBeans: ciclo de trabalho básico.....................................................................................26
8.1. Definição.................................................................................................................................26
8.2. Instalação................................................................................................................................26
8.3. Criação da Cópia Local de Trabalho.......................................................................................26
8.4. Exemplo 1: Livro de Visitas.....................................................................................................27
8.4.1. Visão geral do exemplo Livro de Visitas..........................................................................27
8.4.2. Detalhamento do exemplo Livro de Visitas (passo a passo)............................................27
8.5. Exemplo 2: Criação de Diretórios e Arquivos..........................................................................28
9. Cliente “Comando de linha”: ciclo de trabalho básico.....................................................................28
10. Cliente Apache Ant: ciclo de trabalho básico................................................................................28
11. Referências...................................................................................................................................29

©2007-2008 – Sidney Batista Filho – http://geocities.com/sidneybatistafilho/


Tutorial Subversion

1. Licenciamento de Uso

Este documento é propriedade intelectual © 2007-2008 de Sidney Batista Filho e distribuído sob os seguintes termos:

1. As apostilas e notas de aulas publicadas por Sidney Batista Filho podem ser reproduzidas e distribuídas no todo
ou em parte, em qualquer meio físico ou eletrônico, desde que os termos desta licença sejam obedecidos, e que
esta licença ou referência a ela seja exibida na reprodução.

2. Qualquer publicação na forma impressa deve obrigatoriamente citar, nas páginas externas, sua origem e
atribuições de direito autoral.

3. Todas as traduções e trabalhos derivados ou agregados incorporando qualquer informação contida neste
documento devem ser regidas por estas mesmas normas de distribuição e direitos autorais. Ou seja, não é
permitido produzir um trabalho derivado desta obra e impor restrições à sua distribuição. O autor deve
obrigatoriamente ser notificado (sidneybf@gmail.com) de tais trabalhos com vista ao aperfeiçoamento e
incorporação de melhorias aos originais.

Adicionalmente, devem ser observadas as seguintes restrições:

● A versão modificada deve ser identificada como tal;

● O responsável pelas modificações deve ser identificado e as modificações datadas;

● Reconhecimento da fonte original do documento;

● A localização do documento original deve ser citada;

● Versões modificadas não contam com o endosso dos autores originais a menos que autorização para tal seja
fornecida por escrito.

A licença de uso e redistribuição deste material é oferecida sem nenhuma garantia de qualquer tipo, expressa ou implícita,
quanto a sua adequação a qualquer finalidade. O autor não assume qualquer responsabilidade sobre o uso das
informações contidas neste material.

Este licenciamento foi baseado no seu homônimo, o qual é usado pelo Centro de Computação da Unicamp.

2. Histórico deste documento


Ver. Data Alterado por Revisto por Comentário
0.01 26/05/07 Sidney Batista Filho Criação do documento.
0.02 29/05/07 Sidney Batista Filho Tutorial sobre o ciclo de trabalho básico do Tortoise.
0.03 15/06/07 Sidney Batista Filho Inclusão de exemplos com o ciclo de vida de
documentos.
0.04 19/06/07 Sidney Batista Filho Inclusão dos exemplos do livro de visitas.
0.05 04/07/07 Sidney Batista Filho Retirar exemplos de trabalho e incluir passo a passo
no exemplo livro de visitas com informações do
servidor (porta 8099).
0.06 24/08/07 Leandro Campeão Sidney Batista Filho Detalhamento do exemplo Livro de Visitas (passo a
passo).
0.07 11/09/08 Sidney Batista Filho Adaptação para usar o servidor do GoogleCode e
inclusao dos clientes: Eclipse e NetBeans.
0.08 13/09/08 Sidney Batista Filho Inclusao do Licenciamento de Uso.

©2007-2008 – Sidney Batista Filho – http://geocities.com/sidneybatistafilho/


Tutorial Subversion

0.09 13/09/08 Sidney Batista Filho Alteracao do Layout do documento.


1.00 20/09/08 Sidney Batista Filho Visão geral dos clientes do Subversion. Cliente
comando de linha. Atualização do cliente Tortoise.

©2007-2008 – Sidney Batista Filho – http://geocities.com/sidneybatistafilho/


Tutorial Subversion

3. Objetivo
Este documento tem como objetivos:

● Fazer uma introdução ao sistema de controle de versão Subversion;

● Apresentar configurações e exemplos de ciclo de trabalho básico com diversos


clientes do Subversion: interfaces gráficas – Eclipse, TortoiseSVN e NetBeans – e
comando de linha.

4. Introdução ao Subversion

4.1. Definição
Subversion é um sistema de controle de versão, ou seja, é um software que gerencia
arquivos e diretórios e as mudanças feitas nos mesmos no decorrer do tempo. Um dos
benefícios proporcionados pelo Subvesion é o auxílio ao trabalho colaborativo, pois
permite que várias pessoas façam acesso a um mesmo repositório, o qual é
compartilhado em uma rede de computadores.

4.2. Visão Geral do Subversion

4.2.1. Arquitetura do Subversion

©2007-2008 – Sidney Batista Filho – http://geocities.com/sidneybatistafilho/


Tutorial Subversion

4.2.2. Ciclo de trabalho Básico

Dicas básicas importantes:

● Antes de alterar algo, deve-se fazer um update;

● Antes de se fazer um commit, deve-se fazer um update.

4.2.3. Check Out

©2007-2008 – Sidney Batista Filho – http://geocities.com/sidneybatistafilho/


Tutorial Subversion

4.2.4. Atenção: Usar comandos do Subversion!


Atenção! As operações de copiar, mover, criar diretórios e arquivos devem ser feitas com
comandos do Subversion, via interface gráfica ou comando de linha.

4.3. Organização para o trabalho colaborativo: comunicação


Mais importante do que usar ferramentas para controle de versão é a existência de uma
boa comunicação entre as pessoas que compartilham os recursos. Quanto melhor for
essa comunicação, menos recursos do software de controle de versão serão necessários.

Por exemplo: se uma pessoa sabe que outra está alterando um arquivo e pede para ser
avisada quando a alteração for finalizada, a primeira pessoa passa a modificá-lo somente
após o aviso da liberação do arquivo para alteração.

Entretanto, existem situações nas quais somente a comunicação informal não é


suficiente. Nos exemplos a seguir serão mostradas duas situações:

i. A comunicação informal é suficiente para controlar o compartilhamento de


recursos e

ii. São necessárias funcionalidades do software de controle de versão para controlar


o compartilhamento de recursos (lock).

©2007-2008 – Sidney Batista Filho – http://geocities.com/sidneybatistafilho/


Tutorial Subversion

5. Visão Geral sobre os Exemplos deste Tutorial

5.1. Servidor do Subversion Usado como Exemplo


Para exemplificar a manipulação do Subversion será usado um repositório que foi gerado
automaticamente ao se criar um projeto no Google Code. Tal projeto está disponível em:
http://testesubversion.googlecode.com .

Foram criados usuários exemplos, os quais são: ousuarioN, node N varia de 1 a 9.

5.2. Clientes do Subversion


Existem diversos clientes que podem ser usados para se fazer acesso a um servidor de
um repositório do Subversion. Neste documento, o acesso será feito pelos seguintes
clientes:

● Eclipse;

● TortoiseSVN;

● NetBeans,

● Comando de linha e

● Apache Ant: Ferramenta de automação de tarefas (em breve).

5.2.1. Dados do projeto TesteSubversion


Durante os exemplos, para cada cliente do Subversion, será necessário obter alguns
dados do projeto TesteSubversion, os quais são:

● URL do repositório: https://testesubversion.googlecode.com/svn;

● Pasta do Repositório: trunk;

● Pasta local: <caminho no seu computador><separador>TesteSubversion;

● Usuário: ousuario1 e

● Senha: <senha do usuário no repositório> (vide a seguir como obtê-la);

5.2.2. Senha do usuario do projeto TesteSubversion


Para obter a senha do usuário no repositório, é necessário:

1. Obter a senha do usuário para checkout do Subversion;

2. Sign in: E-mail= ousuario1 – Senha= ousuario1ousuario1;

3. Source > Checkout >

4. link: <googlecode.com password> (Senha= wn9Yy3eQ6uM3 )


©2007-2008 – Sidney Batista Filho – http://geocities.com/sidneybatistafilho/
Tutorial Subversion

5.3. Exemplo 1: Livro de Visitas

5.3.1. Visão geral do exemplo Livro de Visitas

Atualização sem lock (comunicação informal)


1 Fazer acesso ao site com o Livro de Visitas:
http://code.google.com/p/testesubversion/source/browse/trunk/LivroDeVisitas/Liv
roDeVisitas.txt ;

2 Alterar o arquivo na sua cópia de trabalho local (fazer update antes!): C:\svn-
workingcopy\TesteSubversion\LivroVisitas\LivroDeVisitas.txt;

3 Atualizar e submeter (update e commit) e

4 Verificar sua alteração no site.

Atualização com lock


Executar praticamente os mesmos passos anteriores, entretanto, antes do segundo
passo (2.), obter o lock do arquivo a ser alterado e após o terceiro passo (3.) liberar o
lock obtido.

©2007-2008 – Sidney Batista Filho – http://geocities.com/sidneybatistafilho/


Tutorial Subversion

6. Cliente Eclipse: ciclo de trabalho básico

6.1. Definição
O cliente do Subversion que será descrito nesta secção é o Subversive, cujo site oficial é:
http://www.eclipse.org/subversive/.

O Subversive é um plug-in do Eclipse que ...

6.2. Instalação

Faça o download em: http://eclipse.org.

Fazer download do Eclipse:

● GNU/LINUX ;

● Windows: .

Descompactar o Eclipse em:

● GNU/LINUX: $HOME/software ;

● win: C:\software .

6.3. Criação da Cópia Local de Trabalho

Criar o diretório para a cópia local de trabalho (working copy) do servidor do


Subversion:

● GNU/LINUX: $HOME/svn-workingcopy-eclipse ;

● win: C:\svn-workingcopy-eclipse .

Fazer download das configurações do Eclipse (workspace), o qual está disponível em:
http://code.google.com/p/testesubversion/source/browse/trunk/install/conf/ProjetoEclips
e.zip .

Descompactar o ProjetoEclipse.zip em:

● GNU/LINUX: $HOME/svn-workingcopy-eclipse.

● win: C:\svn-workingcopy-eclipse .
©2007-2008 – Sidney Batista Filho – http://geocities.com/sidneybatistafilho/
Tutorial Subversion

eclsvn01: Renomear a pasta ProjetoEclipse para TesteSubversion.

eclsvn02: Executar o Eclipse, informando o local de trabalho do Eclipse:

eclsvn021: Obter a senha do usuário para checkout do Subversion

©2007-2008 – Sidney Batista Filho – http://geocities.com/sidneybatistafilho/


Tutorial Subversion

eclsvn022: E-mail: ousuario1 – Senha: ousuario1ousuario1

eclsvn023: Source > Checkout >

eclsvn024: link: <googlecode.com password>

©2007-2008 – Sidney Batista Filho – http://geocities.com/sidneybatistafilho/


Tutorial Subversion

eclsvn025:

eclsvn03: Usar a senha mostrada na etapa anterior: wn9Yy3eQ6uM3.

©2007-2008 – Sidney Batista Filho – http://geocities.com/sidneybatistafilho/


Tutorial Subversion

eclsvn04: Escolha Yes

eclsvn05:

eclsvn06:

6.4. Exemplo 1: Livro de Visitas

6.4.1. Visão geral do exemplo Livro de Visitas


Veja o item 5.3.1.Visão geral do exemplo Livro de Visitas.

6.4.2. Detalhamento do exemplo Livro de Visitas (passo a passo)

Atualização sem lock (comunicação informal)


1 Fazer acesso ao site com o Livro de Visitas:
©2007-2008 – Sidney Batista Filho – http://geocities.com/sidneybatistafilho/
Tutorial Subversion

http://code.google.com/p/testesubversion/source/browse/trunk/LivroDeVisitas/Liv
roDeVisitas.txt ;

2 Alterar o arquivo na sua cópia de trabalho local (Lembre-se das dicas básicas:
fazer update antes de se fazer uma alteração!): C:\svn-workingcopy-
tortoise\TesteSubversion\LivroDeVisitas\LivroDeVisitas.txt

6.5. Exemplo 2: Criação de Diretórios e Arquivos

©2007-2008 – Sidney Batista Filho – http://geocities.com/sidneybatistafilho/


Tutorial Subversion

7. Cliente TortoiseSVN: ciclo de trabalho básico

7.1. Definição
TortoiseSVN é uma aplicação integrada ao Windows Explorer, que permite executar os
comandos do Subversion através da interface gráfica.

7.2. Instalação
Atenção: feche todos os programas, pois, após a instalação, seu computador deverá ser
reiniciado!

Para instalar o TortoiseSVN, siga as instruções - usando os valores defaults – fornecidas


pelo instalador, que encontra-se no arquivo:

TortoiseSVN-<versão>-win32-svn-<versão>.msi.

Disponível em: http://tortoisesvn.tigris.org/ .

Opcionalmente, pode-se baixar o pacote de tradução para o Português. Após a instalação


do Tortoise, instale o pacote de tradução e altere as configurações do TortoiseSVN
seguindo os seguintes passos:

1. Clique com o botão direito do mouse no Windows Explorer e escolha a opção:

2. Altere para o Português

©2007-2008 – Sidney Batista Filho – http://geocities.com/sidneybatistafilho/


Tutorial Subversion

7.3. Criar a cópia de trabalho local


Siga os seguintes passos:

1. Criar o diretório: C:\svn-workingcopy-tortoise\TesteSubversion;

2. Neste diretório, clicar com o botão direito do mouse e escolher a opção: SVN
Obter... (SVN Checkout...)

3. Ao aparecer a janela Obter (Checkout), preencha seus campos com os dados


apresentados no item 5.2.1.Dados do projeto TesteSubversion, conforme a figura
a seguir:

©2007-2008 – Sidney Batista Filho – http://geocities.com/sidneybatistafilho/


Tutorial Subversion

4. Clique o botão Ok. Aparecerá uma janela de autenticação, cujos campos deverão
ser preenchidos conforme a figura a seguir (Username= ousuarioN - node N é um
número de 1 a 9 e Password= ????). Para o usuário= ousuario1, a senha=
wn9Yy3eQ6uM3 (Obtida no item 5.2.2.Senha do usuario do projeto
TesteSubversion).

Opcionalmente, pode-se marcar o checkbox “Salvar autenticação” para que essa


janela de diálogo não apareça novamente à cada interação com o servidor.

5. Surgirá a seguinte janela de mensagens:

©2007-2008 – Sidney Batista Filho – http://geocities.com/sidneybatistafilho/


Tutorial Subversion

Pronto! No seu computador foi criada uma cópia dos arquivos que encontram-se no
repositório compartilhado no servidor do Subversion.

7.4. Ícones do TortoiseSVN

7.5. Exemplo 1: Livro de Visitas

7.5.1. Visão geral do exemplo Livro de Visitas


Veja o item 5.3.1.Visão geral do exemplo Livro de Visitas.

7.5.2. Detalhamento do exemplo Livro de Visitas (passo a passo)

Atualização sem lock (comunicação informal)


1 Fazer acesso ao site com o Livro de Visitas:
http://code.google.com/p/testesubversion/source/browse/trunk/LivroDeVisitas/Liv
roDeVisitas.txt ;

©2007-2008 – Sidney Batista Filho – http://geocities.com/sidneybatistafilho/


Tutorial Subversion

2 Alterar o arquivo na sua cópia de trabalho local (Lembre-se das dicas básicas:
fazer update antes de se fazer uma alteração!): C:\svn-workingcopy-
tortoise\TesteSubversion\LivroDeVisitas\LivroDeVisitas.txt

2.1 Atualizar (Update):

2.2 Alterar e Submeter (commit) (Lembre-se das dicas básicas: fazer update
antes do commit!):

©2007-2008 – Sidney Batista Filho – http://geocities.com/sidneybatistafilho/


Tutorial Subversion

3 Verificar a sua alteração no site

©2007-2008 – Sidney Batista Filho – http://geocities.com/sidneybatistafilho/


Tutorial Subversion

Atualização com lock


1 Executar praticamente os mesmos passos anteriores, entretanto, antes do
segundo passo (2.), obter o lock do arquivo a ser alterado e após o terceiro passo
(3.) liberar o lock obtido.

1.2 Clique com o botão direito do mouse em cima de um arquivo que você deseje
que fique em lock. Botão direito, TortoiseSVN e GetLock. E o seu arquivo via ficar
assim:

2 Após fazer as alterações no arquivo, clicar com o botão direito no arquivo que foi
aleterado,TortoiseSVN e Release lock. Assim o seu arquivo volta ao normal e poderá ser
alterado por outro usuário:

7.6. Exemplo 2: criação de diretórios e arquivos

1. Crie, no diretório C:\svn-workingcopy-tortoise\TesteSubversion\usuarios , um


diretório com o seu nome de usuário, por exemplo: Sidney

2. neste diretório, crie um arquivo contendo um parágrafo com qualquer editor de


texto.

3. Para adicionar no repositório – que está no servidor – os diretórios e os arquivos


criados, vá para o diretório C:\svn-workingcopy-tortoise\TesteSubversion\

4. Clique no botão direito do mouse e escolha a opção SVN Update

©2007-2008 – Sidney Batista Filho – http://geocities.com/sidneybatistafilho/


Tutorial Subversion

5. No mesmo diretório, clique no botão direito do mouse e escolha a opção SVN


Commit... (ATENÇÃO: é uma boa prática sempre executar o comando update
antes do commit)

6. Altere os arquivos dos colegas (usando a comunicação informal para sincronizar o


acesso ao recurso compartilhado). Aproveite para exercitar o ciclo de trabalho
básico representado na figura a seguir:

©2007-2008 – Sidney Batista Filho – http://geocities.com/sidneybatistafilho/


Tutorial Subversion

©2007-2008 – Sidney Batista Filho – http://geocities.com/sidneybatistafilho/


Tutorial Subversion

8. Cliente NetBeans: ciclo de trabalho básico

8.1. Definição
O cliente do Subversion que será descrito nesta secção é o NetBeans, cujo site oficial é:
http://netbeans.org.

8.2. Instalação

Faça o download em: http://netbeans.org.

8.3. Criação da Cópia Local de Trabalho

Nbsvn01: Versionamento > Subversion > Checkout...

nbsvn02:

©2007-2008 – Sidney Batista Filho – http://geocities.com/sidneybatistafilho/


Tutorial Subversion

nbsvn03: Clicar no botão Fechar

nbsvn04:

8.4. Exemplo 1: Livro de Visitas

8.4.1. Visão geral do exemplo Livro de Visitas


Veja o item 5.3.1.Visão geral do exemplo Livro de Visitas.

8.4.2. Detalhamento do exemplo Livro de Visitas (passo a passo)

Atualização sem lock (comunicação informal)


1 Fazer acesso ao site com o Livro de Visitas:
http://code.google.com/p/testesubversion/source/browse/trunk/LivroDeVisitas/Liv
roDeVisitas.txt ;

©2007-2008 – Sidney Batista Filho – http://geocities.com/sidneybatistafilho/


Tutorial Subversion

2 Alterar o arquivo na sua cópia de trabalho local (Lembre-se das dicas básicas:
fazer update antes de se fazer uma alteração!): C:\svn-workingcopy-
tortoise\TesteSubversion\LivroDeVisitas\LivroDeVisitas.txt

8.5. Exemplo 2: Criação de Diretórios e Arquivos

9. Cliente “Comando de linha”: ciclo de trabalho básico

Em breve!

10. Cliente Apache Ant: ciclo de trabalho básico

Em breve!

©2007-2008 – Sidney Batista Filho – http://geocities.com/sidneybatistafilho/


Tutorial Subversion

11. Referências

Subversion Version Control: Using the Subversion Version Control System in


Development Projects

by William Nagel (Author)

Prentice Hall PTR (May 26, 2005)

ISBN-10: 0131855182

Pragmatic Version Control: Using Subversion (The Pragmatic Starter Kit Series)(2nd
Edition)

by Mike Mason (Author)

2 edition (May 31, 2006)

# Language: English

# ISBN-10: 0977616657

http://code.google.com/p/sambar/wiki/ArtefatosSambar/Subversion

http://subversion.tigris.org/

http://testesubversion.googlecode.com/

Slides de introdução ao TortoiseSVN

Subversion_Training - User - Tortoise.ppt

Livro em português
©2007-2008 – Sidney Batista Filho – http://geocities.com/sidneybatistafilho/
Tutorial Subversion

http://svnbook.red-bean.com/

http://subversion.tigris.org/servlets/ProjectDocumentList

©2007-2008 – Sidney Batista Filho – http://geocities.com/sidneybatistafilho/

Anda mungkin juga menyukai