Subvertendo o codigo PHP com SVN - ENSOL

14
Subvertendo o Código PHP com SVN Subvertendo o Código PHP com SVN Ricardo Coelho http://www.slideshare.net/ram.coelho/svnensol

description

Palestra sobre Subversion apresentada no IV ENSOL, em 06/05/2010

Transcript of Subvertendo o codigo PHP com SVN - ENSOL

Page 1: Subvertendo o codigo PHP com SVN - ENSOL

Subvertendo o Código PHP com SVNSubvertendo o Código PHP com SVN

Ricardo Coelhohttp://www.slideshare.net/ram.coelho/svnensol

Page 2: Subvertendo o codigo PHP com SVN - ENSOL

Quem é esse gordinho?Quem é esse gordinho?

● Ricardo Coelho é fundador e coordenador do PHP-Maranhão

● Representante do estado noPHP Brasil Comunidades

● Auditor NBR ISO 27001:2006● Perito Forense Digital● CTO da Nexy

Page 3: Subvertendo o codigo PHP com SVN - ENSOL

Quem é esse gordinho?Quem é esse gordinho?

● Ricardo Coelho é fundador e coordenador do PHP-Maranhão

● Representante do estado noPHP Brasil Comunidades

● Auditor NBR ISO 27001:2006● Perito Forense Digital● CTO da Nexy● Cliente Bob's Van Gogh

Page 4: Subvertendo o codigo PHP com SVN - ENSOL

Porque Subversion?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óriospequenos, documentaçãoescassa

Page 5: Subvertendo o codigo PHP com SVN - ENSOL

Quem migrou do CVS?Quem migrou do CVS?

● Apache Software Foundation● Debian● Zope● KDE● Mono● (…) todo mundo está migrando!

Page 6: Subvertendo o codigo PHP com SVN - ENSOL

Integração ContínuaIntegraçã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

Page 7: Subvertendo o codigo PHP com SVN - ENSOL

ComponentesComponentes

● 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

Page 8: Subvertendo o codigo PHP com SVN - ENSOL

ArquiteturaArquitetura

svn(cliente texto)

Aplicativo Gráfico

Serviços para Aplicações Cliente

Biblioteca deGerenciamento

de cópias de trabalho

Acesso ao Repositório

svnserve

SVN File

RepositórioBDB ou FSFS

DAV

HTTPS

HTTP

SSH

Esquemas

file://http://https://svn://

svn+ssh://

Page 9: Subvertendo o codigo PHP com SVN - ENSOL

Comandos básicosComandos básicos

● svnadmin create● svn import● svn checkout● svn update● svn commit● svn revert● svn export

● .svn?● svn switch

Page 10: Subvertendo o codigo PHP com SVN - ENSOL

ConcorrênciaConcorrê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?

Page 11: Subvertendo o codigo PHP com SVN - ENSOL

Branches & TagsBranches & 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?

Page 12: Subvertendo o codigo PHP com SVN - ENSOL

FontesFontes

● 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/

Page 13: Subvertendo o codigo PHP com SVN - ENSOL

ContatosContatos

● Email: [email protected]● Twitter: @ramcoelho● Skype: ram.coelho● www.nexy.com.br

Page 14: Subvertendo o codigo PHP com SVN - ENSOL

Obrigado!Obrigado!