Este documento apresenta uma introdução ao uso do sistema de controle de versão Subversion (SVN). Ele descreve o que é SVN e por que é melhor do que outras opções como CVS e VSS. Também explica os principais componentes de SVN, como funciona a arquitetura, e demonstra alguns comandos básicos como checkout, commit, update e tags.
1. Subvertendo o Código PHP com SVN
http://www.slideshare.net/ram.coelho/svnensol Ricardo Coelho
2. Quem é esse gordinho?
●
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. Quem é esse gordinho?
●
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
●
Cliente Bob's Van Gogh
4. 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
5. Quem migrou do CVS?
●
Apache Software Foundation
●
Debian
●
Zope
●
KDE
●
Mono
●
(…) todo mundo está migrando!
6. 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
10. 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?
11. 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?