Upload
paulo-remoli
View
255
Download
1
Embed Size (px)
DESCRIPTION
Introdução aos conceitos do SVN utilzando o TortoiseSVN
Citation preview
Subversion (SVN) com o TortoiseSVNPaulo Renato
Conteúdo●Introdução●Conceitos Básicos●Fluxo de trabalho●Boas Práticas
Conceitos BásicosRepositório
O repositório é um servidor de arquivos versionado, com ele é possível visualizar cada alteração feita em determinado arquivo ou diretório.
Estrutura do repositório:●trunk: armazena a versão funcional mais recente de desenvolvimento.
●branch: armazena versões de desenvolvimento paralelas baseadas no trunk. Deve ser utilizado para mudanças que podem afetar a integridade do trunk.
●tag: armazena uma “cópia” do repositório em uma determinada revisão, para facilitar a localização de versões. Cada tag possui um nome único que a identifica.
Conceitos Básicos
Cópia de Trabalho
Todo desenvolvedor tem sua própria cópia de trabalho, informar a url do repositório e a pasta na qual o projeto será criado.Menu → SVN Checkout.
Revisão
Número que identifica cada uma das alterações ou conjunto de alterações realizadas em um repositório. Tal número é obtido a partir de uma sequência a qual é compartilhada por todos os diretórios do repositório.
Conceitos BásicosHEADÉ a revisão mais recente do repositório.
UpdateAtualização da cópia local para a revisão atual do repositório.Menu → SVN Update
CommitEnvia as modificações realizadas localmente para o servidor.Menu → SVN Commit
RevertDesfaz todas as modificações realizadas no arquivo local desde a última atualização (Obs. Não irá desfazer as mudanças já enviadas para o servidor).Menu → TortoiseSVN → Revert
SwitchAponta a cópia local para outro branch/tag.Menu → TortoiseSVN → Switch
Conceitos BásicosStatus da cópia local
Normal: O arquivo está compatível com a última revisão atualizada(Obs. Isto não significa que o repositório está atualizado).
Modified: A cópia local possui modificações, para ver as modificaçõesMenu → TortoiseSVN → Diff.
Conflicted: As modificações locais estão em conflito com as modificações do repositório. Para editar os conflitos TortoiseSVN → Edit Conflicts e depois para marcá-los como resolvido Menu → TortoiseSVN → Resolved.
Conceitos BásicosGerenciamento dos arquivos
Todo o gerenciamento dos arquivos (Ex. Renomear, remover, adicionar, mover, etc) deve ser realizado utilizando o Tortoise.
Selecione o arquivo e escolha a opção desejada:Menu → TortoiseSVN → AddMenu → TortoiseSVN → RenameMenu → TortoiseSVN → Delete
Para mover arquivos é necessário arrastar e soltar o arquivo com botão direito do mouse e selecionar a opção: SVN Move versioned item(s) here.
trunk
branch
tag
Branch para uma funcionalidade
A funcionalidade está prontao branch é reintegrado
Criação da tagProjeto-1.0.0
Pequenas modificações
Fluxo de trabalho
Branch de establilização
Fluxo de trabalhoCriação de branch/tag
Selecione o repositório:Menu → TortoiseSVN → Branch/Tag
Especificar o caminho no campo To path:branches/tdk_data_access
Adicionar a mensagem informando o que para que serve este branch/tag.
Apontar a partir de qual revisão deve ser criado o branch.Create copy in the repository from:
HEAD
Habilitar a opção Switch working copy to new branch para apontar automaticamente a cópia local para o novo branch
Fluxo de trabalhoReintegrar um branch para o trunk
Selecione a cópia local (Obs. Deve estar apontando para o trunk)Menu → TortoiseSVN → Merge
Selecionar o opção: Reintegrate a branch → Next
Apontar qual o branch deve ser reintegrado:https://svn.funcate.org.br/tdk/branches/tdk_data_access → NextE depois Merge...
Para resolver os conflitos:É possível escolher qual cópia manter,ou editar os blocos em conflito.
Edição de conflitos
Modificação na mesma linha nos dois arquivos.Possíveis soluções: ● Escolher o bloco de um dos arquivos; ● Adicionar um bloco após o outro;● Editar o texto manualmente com uma junção dos dois blocos.
Arquivo Remoto Arquivo Local
Arquivo resultante do Merge
Fim. Muito obrigado!
Informações para contatoE-mail: [email protected]
Tel.: +55 12 3925 1395Site: www.funcate.org.br