SVN - Subversion

392 visualizações

Publicada em

Apresentação explicando detalhes básicos do SVN.

Publicada em: Tecnologia
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
392
No SlideShare
0
A partir de incorporações
0
Número de incorporações
3
Ações
Compartilhamentos
0
Downloads
4
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

SVN - Subversion

  1. 1. svn> subversion
  2. 2. QUEM TEM MEDODE MUDANÇA?
  3. 3. Na natureza nada se cria, nada se perde, tudo se transforma.“ Antoine Lavoisier
  4. 4. MUDANÇAS SÃO INEVITÁVEIS
  5. 5. SOURCE CONTROL SYSTEMS
  6. 6. TIME TRAVEL
  7. 7. svn>
  8. 8. REPOSITÓRIO
  9. 9. ESTRUTURA BÁSICA
  10. 10. /trunk versão estável pronto pra ser lançado em produção
  11. 11. /branch trabalhar paralelamente desenvolver novas funcionalidades
  12. 12. /tag marco histórico um rótulo pra identificar facilmente algo
  13. 13. SVN COMMANDS
  14. 14. obtendo arquivos do repositório usado para obtermos os arquivos de um projeto já existente ao iniciarmos nele $ svn checkout
  15. 15. 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
  16. 16. obtendo as modificações do repositório usado para atualizarmos os arquivos com as modificações do repositório $ svn update
  17. 17. 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
  18. 18. 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
  19. 19. 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
  20. 20. DEMO
  21. 21. IMPLEMENTANDO NOVAS FUNCIONALIDADES
  22. 22. criando uma branch geramos uma nova linha de desenvolvimento a partir da versão mais estável, ou seja, a trunk $ svn copy
  23. 23. 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
  24. 24. DEMO
  25. 25. CONFLITOS
  26. 26. causa comum $ svn commit FILE revision 5 $ svn commit FILE revision 5 revision 6 $ svn: Out of date $ svn update $ svn: Conflicted!
  27. 27. o que fazer? (...)
  28. 28. 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
  29. 29. 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
  30. 30. 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
  31. 31. DEMO
  32. 32. FINALIZANDO O TRABALHO
  33. 33. 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
  34. 34. DEMO
  35. 35. CRIANDO MARCOS NA HISTÓRIA
  36. 36. criando uma tag gerarmos uma tag de uma release, snapshot e etc $ svn copy
  37. 37. DEMO
  38. 38. BOAS PRÁTICAS SVN + VS
  39. 39. 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
  40. 40. 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
  41. 41. 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
  42. 42. 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
  43. 43. DEMO
  44. 44. RECOMENDAÇÕES
  45. 45. TortoiseSVN extensão pro Windows FREE! http://tortoisesvn.net/
  46. 46. VisualSVN plugin integrado ao Visual Studio https://www.visualsvn.com/visualsvn/
  47. 47. Se quiser derrubar uma árvore na metade do tempo, passe o dobro amolando o machado. “ Desconhecido mantenha atualizado seus plugins
  48. 48. Muito obrigado! Rafael Kiyohiro Une rafael@agrotools.com.br twitter.com/rafaelune github.com/rafaelune Jonathan Tavares jonathan@agrotools.com.br

×