SlideShare uma empresa Scribd logo
1 de 50
Baixar para ler offline
svn>
subversion
QUEM TEM
MEDODE MUDANÇA?
Na natureza nada se cria, nada se
perde, tudo se transforma.“
Antoine Lavoisier
MUDANÇAS
SÃO INEVITÁVEIS
SOURCE CONTROL SYSTEMS
TIME
TRAVEL
svn>
REPOSITÓRIO
ESTRUTURA
BÁSICA
/trunk
versão estável
pronto pra ser lançado em produção
/branch
trabalhar paralelamente
desenvolver novas funcionalidades
/tag
marco histórico
um rótulo pra identificar facilmente algo
SVN
COMMANDS
obtendo arquivos do
repositório
usado para obtermos os arquivos de um
projeto já existente ao iniciarmos nele
$ svn checkout
adicionando arquivos ao
controle de versão
usado para adicionarmos novos arquivos
criados ao controle de versão do svn
$ svn add
os novos arquivos só são adicionados ao
repositório remoto após o commit
obtendo as modificações
do repositório
usado para atualizarmos os arquivos
com as modificações do repositório
$ svn update
removendo arquivos do
controle de versão
usado para remover arquivos$ svn delete
os arquivos só são removidos
do repositório remoto após o commit
enviando as modificações
para o repositório
usado para enviar ao repositório
as modificações realizadas nos arquivos
$ svn commit
faça um update antes do commit,
assim você pode resolver os conflitos
e revalidar a versão antes de commitar
renomeando arquivos
do controle de versão
usado para renomear arquivos$ svn mv
os arquivos só serão renomeados no
repositório remoto após o commit
DEMO
IMPLEMENTANDO
NOVAS FUNCIONALIDADES
criando uma branch
geramos uma nova linha de desenvolvimento
a partir da versão mais estável, ou seja,
a trunk
$ svn copy
trabalhando com a branch
usamos o mesmo comando que vimos antes
para obter os arquivos já existentes no
repositório, só que dessa vez apontamos
para a branch que estamos trabalhando
$ svn checkout
DEMO
CONFLITOS
causa comum
$ svn commit FILE revision 5
$ svn commit FILE revision 5
revision 6
$ svn: Out of date
$ svn update
$ svn: Conflicted!
o que fazer?
(...)
resolvendo conflitos como
um altruísta
revertemos as mudanças locais e
atualizamos os arquivos com a
versão do repositório
$ svn revert
$ svn update
resolvendo conflitos como
um egoísta
ignoramos as mudanças vindas do
repositório e mantemos as mudanças locais
$ cp FILE.mine FILE
$ svn resolved FILE
resolvendo conflitos como
um adulto
verificamos as mudanças vindas
do repositório com as mudanças locais
<<<<<<< .mine
This is fun stuff!
=======
This is a doc file
>>>>>>> .r6
DEMO
FINALIZANDO
O TRABALHO
merge
mesclamos as mudanças da branch na trunk$ svn merge
--reintegrate
traga as mudanças da trunk para a branch,
resolva os conflitos e depois faça o merge na trunk
DEMO
CRIANDO MARCOS
NA HISTÓRIA
criando uma tag
gerarmos uma tag de uma release, snapshot
e etc
$ svn copy
DEMO
BOAS PRÁTICAS
SVN + VS
ignorar bin e obj
removemos os arquivos de build do controle de versão
controle de versão de código não trabalha bem com
arquivos binários
atualizar o .csproj
ao adicionar novos arquivos devemos incluir o .csproj no
nosso commit, assim, os arquivos adicionados ficam
disponíveis para os demais membro do time trabalhando
no projeto
ignorar o .csproj.user
esse arquivo armazena suas configurações da IDE do Visual
Studio, por mais legal que elas possam ser pra você, gosto é
gosto e não se discute
ignorar o *.suo
outro arquivo que armazena opções do usuário para a
solução e não deve ser incluído no controle de versão
DEMO
RECOMENDAÇÕES
TortoiseSVN
extensão pro Windows
FREE!
http://tortoisesvn.net/
VisualSVN
plugin integrado ao Visual Studio
https://www.visualsvn.com/visualsvn/
Se quiser derrubar uma árvore na
metade do tempo, passe o dobro
amolando o machado.
“
Desconhecido
mantenha atualizado seus plugins
Muito obrigado!
Rafael Kiyohiro Une
rafael@agrotools.com.br
twitter.com/rafaelune
github.com/rafaelune
Jonathan Tavares
jonathan@agrotools.com.br

Mais conteúdo relacionado

Mais procurados

Mais procurados (20)

CVS - Slides Parte 2 - Administração
CVS - Slides Parte 2 - AdministraçãoCVS - Slides Parte 2 - Administração
CVS - Slides Parte 2 - Administração
 
CVS - Slides Parte 3 - Básico
CVS - Slides Parte 3 - BásicoCVS - Slides Parte 3 - Básico
CVS - Slides Parte 3 - Básico
 
Curso de CVS - Lab 3
Curso de CVS - Lab 3Curso de CVS - Lab 3
Curso de CVS - Lab 3
 
SVN com TortoiseSVN
SVN com TortoiseSVNSVN com TortoiseSVN
SVN com TortoiseSVN
 
Apresentação controle de versão
Apresentação controle de versãoApresentação controle de versão
Apresentação controle de versão
 
Crud
CrudCrud
Crud
 
CVS
CVSCVS
CVS
 
Intervalo técnico Git/SVN
Intervalo técnico Git/SVNIntervalo técnico Git/SVN
Intervalo técnico Git/SVN
 
Controle de Versão Distribuído com Git básico
Controle de Versão Distribuído com Git básicoControle de Versão Distribuído com Git básico
Controle de Versão Distribuído com Git básico
 
Curso de CVS - Lab 2
Curso de CVS - Lab 2Curso de CVS - Lab 2
Curso de CVS - Lab 2
 
“Revision Control Systems: Subversion (SVN)” por Tiago Rodrigues
“Revision Control Systems: Subversion (SVN)” por Tiago Rodrigues“Revision Control Systems: Subversion (SVN)” por Tiago Rodrigues
“Revision Control Systems: Subversion (SVN)” por Tiago Rodrigues
 
SVN Básico
SVN BásicoSVN Básico
SVN Básico
 
Sistemas de controle de versão
Sistemas de controle de versãoSistemas de controle de versão
Sistemas de controle de versão
 
Introdução ao GitHub e Git
Introdução ao GitHub  e GitIntrodução ao GitHub  e Git
Introdução ao GitHub e Git
 
Git e Github
Git e GithubGit e Github
Git e Github
 
Docker e suas tecnologias por @cesarnog
Docker e suas tecnologias por @cesarnogDocker e suas tecnologias por @cesarnog
Docker e suas tecnologias por @cesarnog
 
CVS - Slides Parte 4 - Avançado
CVS - Slides Parte 4 - AvançadoCVS - Slides Parte 4 - Avançado
CVS - Slides Parte 4 - Avançado
 
Docker para iniciantes
Docker para iniciantesDocker para iniciantes
Docker para iniciantes
 
Svn e processos de controle de código
Svn e processos de controle de códigoSvn e processos de controle de código
Svn e processos de controle de código
 
Git e GitHub
Git e GitHubGit e GitHub
Git e GitHub
 

Semelhante a SVN Introdução e Comandos

Version all the things - Workshop
Version all the things - WorkshopVersion all the things - Workshop
Version all the things - WorkshopAndréa Zambrana
 
Maven Versioning Strategy (VR)
Maven Versioning Strategy (VR)Maven Versioning Strategy (VR)
Maven Versioning Strategy (VR)Marcus Carvalho
 
Desenvolvimento organizado com VCS
Desenvolvimento organizado com VCSDesenvolvimento organizado com VCS
Desenvolvimento organizado com VCSyogarine
 
CVS - Slides Parte 1 - Introdução
CVS - Slides Parte 1 - IntroduçãoCVS - Slides Parte 1 - Introdução
CVS - Slides Parte 1 - IntroduçãoMarden Neubert
 
[Mini-curso] Sistema de Controle de Versão
[Mini-curso] Sistema de Controle de Versão[Mini-curso] Sistema de Controle de Versão
[Mini-curso] Sistema de Controle de VersãoMarco Rosner
 
Gerência de Configuração
Gerência de ConfiguraçãoGerência de Configuração
Gerência de ConfiguraçãoWagner Zaparoli
 
Git workshop
Git workshopGit workshop
Git workshopYuri Reis
 
Apresentação maven
Apresentação mavenApresentação maven
Apresentação mavenAndré Justi
 
Maven 3, Sonar e Hudson
Maven 3, Sonar e HudsonMaven 3, Sonar e Hudson
Maven 3, Sonar e HudsonRodrigo Branas
 
Git - Fluxo do Versionamento adotado
Git - Fluxo do Versionamento adotadoGit - Fluxo do Versionamento adotado
Git - Fluxo do Versionamento adotadoWilliam Lima
 
Git - Controle de Versão Inteligente
Git - Controle de Versão InteligenteGit - Controle de Versão Inteligente
Git - Controle de Versão InteligenteAdriano Rocha
 
TDC2016POA | Trilha Infraestrutura - Produção nove vezes ao dia - Como um tim...
TDC2016POA | Trilha Infraestrutura - Produção nove vezes ao dia - Como um tim...TDC2016POA | Trilha Infraestrutura - Produção nove vezes ao dia - Como um tim...
TDC2016POA | Trilha Infraestrutura - Produção nove vezes ao dia - Como um tim...tdc-globalcode
 

Semelhante a SVN Introdução e Comandos (20)

Svn Tech Thursday
Svn Tech ThursdaySvn Tech Thursday
Svn Tech Thursday
 
SVN keywords
SVN keywordsSVN keywords
SVN keywords
 
Version all the things - Workshop
Version all the things - WorkshopVersion all the things - Workshop
Version all the things - Workshop
 
Svn - grupo de estudos sol7
Svn - grupo de estudos sol7Svn - grupo de estudos sol7
Svn - grupo de estudos sol7
 
Maven Versioning Strategy (VR)
Maven Versioning Strategy (VR)Maven Versioning Strategy (VR)
Maven Versioning Strategy (VR)
 
Desenvolvimento organizado com VCS
Desenvolvimento organizado com VCSDesenvolvimento organizado com VCS
Desenvolvimento organizado com VCS
 
CVS - Slides Parte 1 - Introdução
CVS - Slides Parte 1 - IntroduçãoCVS - Slides Parte 1 - Introdução
CVS - Slides Parte 1 - Introdução
 
[Mini-curso] Sistema de Controle de Versão
[Mini-curso] Sistema de Controle de Versão[Mini-curso] Sistema de Controle de Versão
[Mini-curso] Sistema de Controle de Versão
 
Gerência de Configuração
Gerência de ConfiguraçãoGerência de Configuração
Gerência de Configuração
 
Git workshop
Git workshopGit workshop
Git workshop
 
Apresentação maven
Apresentação mavenApresentação maven
Apresentação maven
 
Aprendendo Git
Aprendendo GitAprendendo Git
Aprendendo Git
 
Maven 3, Sonar e Hudson
Maven 3, Sonar e HudsonMaven 3, Sonar e Hudson
Maven 3, Sonar e Hudson
 
Maven em 10 minutos
Maven em 10 minutosMaven em 10 minutos
Maven em 10 minutos
 
Bower - Gerenciador de Pacotes para WEB
Bower - Gerenciador de Pacotes para WEBBower - Gerenciador de Pacotes para WEB
Bower - Gerenciador de Pacotes para WEB
 
Git Básico
Git BásicoGit Básico
Git Básico
 
Git - Fluxo do Versionamento adotado
Git - Fluxo do Versionamento adotadoGit - Fluxo do Versionamento adotado
Git - Fluxo do Versionamento adotado
 
Git - Controle de Versão Inteligente
Git - Controle de Versão InteligenteGit - Controle de Versão Inteligente
Git - Controle de Versão Inteligente
 
Git para quem vem do SVN
Git para quem vem do SVNGit para quem vem do SVN
Git para quem vem do SVN
 
TDC2016POA | Trilha Infraestrutura - Produção nove vezes ao dia - Como um tim...
TDC2016POA | Trilha Infraestrutura - Produção nove vezes ao dia - Como um tim...TDC2016POA | Trilha Infraestrutura - Produção nove vezes ao dia - Como um tim...
TDC2016POA | Trilha Infraestrutura - Produção nove vezes ao dia - Como um tim...
 

SVN Introdução e Comandos