A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Controle de Versão com SubVersion

Apresentações semelhantes


Apresentação em tema: "Controle de Versão com SubVersion"— Transcrição da apresentação:

1 Controle de Versão com SubVersion
Erick Sasse Cadena Sistemas

2 Erick Sasse Desenvolvedor há uns 15 anos Ex-MSX (Expert DDPlus)
Ex-clippeiro Ex-BBSeiro Delphi desde a primeira versão Aventuras em C# (VS.NET) Usuário PalmOS (inclinando para PocketPC) Aspirante a mergulhador Palestrante DDD, FDD, BorCon.

3 Por que usar controle de versão?
Registro histórico dos arquivos dos projetos ao longo do tempo. Permite que desenvolvedores trabalhem juntos sem que um atrapalhe o outro. Não é apenas para equipes de desenvolvedores. Pode rodar localmente com muita eficiência. Existem opções totalmente gratuitas (ex. SubVersion). Segurança total na manipulação e alteração do código. Loucura não usar, principalmente quando em mais de um desenvolvedor.

4 Benefícios Backup automático do código fonte (quando usado em computador separado). Recuperação fácil do estado anterior do código quando se faz algo que não ficou bom. Compartilhamento de código totalmente suave e sem dores de cabeça. Diferentes versões em paralelo (branches). Consultar qualquer versão de um arquivo. Você não precisa mais gritar pelo corredor para saber se alguém está usando o arquivo que você quer editar.

5 Mesmo assim... Algumas pesquisas indicam que cerca de 70% dos desenvolvedores não utilizam nenhum tipo de controle de versão!!!!

6 Será que ele usava?

7 Por que SubVersion? Open Source
Roda nas principais plataformas (Windows, Linux) Roda localmente Sucessor natural do CVS “Versionamento” de diretórios Commits atômicos Acesso via HTTP

8 TortoiseSVN Cliente gráfico do SubVersion para Windows
Integrado ao “shell” Você praticamente só usará ele.

9 Modelos de “Versionamento”
Lock-Modify-Unlock Ou checkout-edit-checkin; Falsa noção de segurança. Mais problemas do que parece. Desenvolvedores esquecem arquivos travados frequentemente. Você só consegue alterar um arquivo se conseguir destravá-lo. Dificulta uso off-line.

10 Modelos de “Versionamento”
Copy-Modify-Merge Método usado pelo SubVersion. Mais simples e prático. Desenvolvedores podem trabalhar em paralelo no mesmo arquivo. Muito menos problemático do que você pensa. Todo desenvolvedor tem uma cópia de trabalho em sua máquina liberada para edição. Tranqüilo para uso off-line.

11 Ciclo básico de trabalho
Atualiza sua cópia de trabalho com os arquivos do servidor Realiza modificações na cópia local Examina modificações Salva suas modificações no servidor Demo

12 Tags (ou labels) Um dos recursos mais importantes do controle de versão. Usadas para marcar um determinado momento do seu repositório com um nome com algum significado mais simbólico. Demo

13 Quando usar tags Use a vontade, não tem efeitos colaterais:
Quando você faz um release Antes de fazer uma grande modificação Quando você faz um build automatizado

14 Branches Você usa branches quando precisa trabalhar em duas versões distintas de um projeto ao mesmo tempo. Novas versões: Após o lançamento da versão 1.0 do seu aplicativo, você tem que iniciar o desenvolvimento da versão 2.0 e manter a 1.0. Não tenha medo de usar. Demo

15 Árvore padrão de projeto
/trunk (sua linha atual de desenvolvimento) /braches /tags /projeto2 /trunk

16 Quais arquivos controlar?
Somente arquivos necessários para o build do aplicativo. Não controle arquivos que são gerados automaticamente, como EXEs, DLLs, DCUs, etc. Arquivos texto (código fonte, HTML, XML) são gerenciados graciosamente. Arquivos binários devem ser controlados apenas em último caso, ou seja, quando não se tem os fontes que os geram. E ainda assim, somente se eles forem necessários para o build do nosso aplicativo.

17 Regras Básicas Só “commitar” código compilável.
Quem quebrar o build tem que sofrer: Fazer café toda manhã; Depositar R$1 no jarro para o chopp da galera no final do projeto; Realizar commits freqüentes, para evitar conflitos. Execute o Diff sempre antes de cada commit para revisar suas alterações. Descreva seus commits o máximo possível.

18 Referências SubVersion (http://subversion.tigris.org)
TortoiseSVN ( SVN Book ( Source Control HOWTO ( Wush.net – Hospedagem SubVersion (

19 Obrigado!


Carregar ppt "Controle de Versão com SubVersion"

Apresentações semelhantes


Anúncios Google