Subvertendo o código PHP com SVN

1.496 visualizações

Publicada em

Arquitetura e vantagens do Subversion

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

Sem downloads
Visualizações
Visualizações totais
1.496
No SlideShare
0
A partir de incorporações
0
Número de incorporações
12
Ações
Compartilhamentos
0
Downloads
27
Comentários
0
Gostaram
1
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Subvertendo o código PHP com SVN

  1. 1. Subvertendo o Código PHP com SVN Ricardo Coelho
  2. 2. Quem sou eu? ● Ricardo Coelho é fundador e coordenador do PHP-Maranhão ● Representante do estado no PHP Brasil Comunidades ● Auditor NBR ISO 27001:2006 ● Perito Forense Digital ● CTO da Nexy
  3. 3. Porque Subversion? ● E o CVS? ● Faltam: commit atômico, rename, move, copy, permissões de repositório ● E o VSS? ● Sem commit atômico, sem rename, sem move, sem copy, sem permissões de repositório, código proprietário, limitado a plataforma Windows, só funciona em repositórios pequenos, documentação escassa
  4. 4. Quem migrou do CVS? ● Apache Software Foundation ● Debian ● Zope ● KDE ● Mono ● (…) todo mundo está migrando!
  5. 5. Integração Contínua ● Testes unitários executados a cada commit ● É possível saber quem quebrou, onde, como e quando e isso tudo na hora em que acontece ● phpUnderControl
  6. 6. Componentes ● svn: Ferramenta cliente ● Update, Checkout, Commit, Import, Export ● svnadmin: Ferramenta do repositório ● Create ● svnserve: Servidor dedicado TCP/IP ● svnlook: Ferramenta para inspeção ● DAV: Módulo servidor TCP/IP do Apache
  7. 7. Arquitetura svn Serviços para Biblioteca de (cliente texto) Aplicações Cliente Gerenciamento de cópias de trabalho Aplicativo Gráfico Acesso ao Repositório DAV SVN File Esquemas SSH file:// http:// svnserve HTTP https:// svn:// HTTPS Repositório svn+ssh:// BDB ou FSFS
  8. 8. Comandos básicos ● svnadmin create ● svn import ● svn checkout ● svn update ● svn commit ● svn revert ● svn export ● .svn? ● svn switch
  9. 9. Concorrência ● Acesso simultâneo ● Estratégia de locking ● Estratégia de merging ● Resolução de conflitos ● Quem commita primeiro vai para casa mais cedo! ● E se eu quiser incluir uma funcionalidade nova? ● E como ficam as manutenções enquanto isso?
  10. 10. Branches & Tags ● Diretórios recomendados ● Branching === Copying ● O histórico (Citarás o branching!) ● svn status ● svn diff ● svn merge sempre da versão comum ● Merging === Diff & Apply ● Tag == Branch? WTF? – Mantenha o repositório compilável! – E se eu quiser continuar o trabalho em casa?
  11. 11. Fontes ● http://svnbook.red-bean.com ● http://subversion.apache.org/ ● http://www.pronus.eng.br/artigos_tutoriais/ger encia_configuracao/subversion.php ● http://subversion.apache.org/docs/community- guide/
  12. 12. Contatos ● Email: ricardo@nexy.com.br ● Twitter: @ramcoelho ● Skype: ram.coelho ● www.nexy.com.br
  13. 13. Obrigado!

×