Subvertendo o código PHP com SVN

1,502 views

Published on

Arquitetura e vantagens do Subversion

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,502
On SlideShare
0
From Embeds
0
Number of Embeds
13
Actions
Shares
0
Downloads
27
Comments
0
Likes
1
Embeds 0
No embeds

No notes for 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!

×