1 / 30

Controlando Projetos com Netbeans e Subversion

Controlando Projetos com Netbeans e Subversion. Curriculum. Formado em Tecnologia da Informática – Fatec jahu Pós graduado em Gerenciamento de Projetos – Senac Bauru 6 anos de experiência em PHP Analista de Sistemas na Editora Alto Astral há 3 anos.

dudley
Télécharger la présentation

Controlando Projetos com Netbeans e Subversion

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Controlando Projetos com Netbeans e Subversion XI Jornada de Informática

  2. Curriculum XI Jornada de Informática • Formado em Tecnologia da Informática – Fatec jahu • Pós graduado em Gerenciamento de Projetos – Senac Bauru • 6 anos de experiência em PHP • Analista de Sistemas na Editora Alto Astral há 3 anos Leandro Augusto Kitamura (lekitamura@gmail.com)

  3. Agenda XI Jornada de Informática • Visão geral dos Softwares Utilizados • Por que versionar? • O Subversion • Instalação • Conceitos • Uso básico • Branching, tagging and merging • Padrões de Utilização • Clients • Dúvidas

  4. Softwares utilizados XI Jornada de Informática • Ubuntu 9.04 • Subversion 1.5.4 • Apache 2.2 • Netbeans 6.9.1 + Plugin para PHP 1.13.2 • VirtualBox 2.1.4

  5. Por que versionar? XI Jornada de Informática • Não versionar está na lista dos 40 itens que dizem se você é um programador PHP fracassado; • Possibilitar rápidos downgrades de sistemas; • Responder questões que estão no coração de um sistema de versionamento como: • O que o arquivo continha na quarta-feira passada? • Quem foi o último desenvolvedor a alterar o arquivo? • O que ele fez?

  6. Subversion XI Jornada de Informática • Subversion é um sistema de controle de versões. • Ele gerencia arquivos, diretórios e as alterações realizadas nos mesmos.

  7. Subversion XI Jornada de Informática Fonte: http://subversion.tigris.org/svn-dav-securityspace-survey.html

  8. Subversion XI Jornada de Informática • Projetos Open Source que usam o Subversion: • PHP • ASF: The Apache Software Foundation; • KDE: The K Desktop Environment; • GNOME: The GNOME Project; • GCC: The GNU Compiler Collection; • Python: The Python programming language; • Samba: SMB services for *nix systems; • Mono: an open-source implementation of C#/.NET; • PuTTY: Win32 SSH/Telnet implementation; Fonte: http://subversion.tigris.org/testimonials.html#open-source-projects-using-svn

  9. Subversion - Instalação XI Jornada de Informática • sudo apt-get install apache2 subversion libapache2-svn • sudo gedit /etc/apache2/mods-available/dav_svn.conf ... SVNParentPath /var/svn/repository #SVNPath /var/svn/repository ..... AuthType Basic AuthName "Subversion Repository" AuthUserFile /etc/apache2/dav_svn.passwd Require valid-user ... • htpasswd -c /etc/apache2/dav_svn.passwd tester • sudo /etc/init.d/apache2 restart

  10. Subversion - Conceitos XI Jornada de Informática ModeloTípico Fonte: http://svnbook.red-bean.com/en/1.1/svn-book.pdf

  11. Subversion - Conceitos XI Jornada de Informática Problemas deste modelo Fonte: http://svnbook.red-bean.com/en/1.1/svn-book.pdf

  12. Subversion - Conceitos XI Jornada de Informática Solução Lock – Modify - Unlock Fonte: http://svnbook.red-bean.com/en/1.1/svn-book.pdf

  13. Subversion - Conceitos XI Jornada de Informática Solução Copy – Modify - Merge Fonte: http://svnbook.red-bean.com/en/1.1/svn-book.pdf

  14. Subversion - Conceitos XI Jornada de Informática Solução Copy – Modify - Merge Fonte: http://svnbook.red-bean.com/en/1.1/svn-book.pdf

  15. Subversion - Conceitos XI Jornada de Informática Subversion URLs

  16. Subversion - Conceitos XI Jornada de Informática Working Copies Criando uma cópia de trabalho Enviando uma alteração

  17. Subversion - Conceitos XI Jornada de Informática Revisões svn update: Atualiza a cópia de trabalho

  18. Subversion - Conceitos XI Jornada de Informática • Informações gravadas para cada pasta (.svn) • Em qual revisão a cópia é baseada; • Timestamp gravado na última atualização com o repositório; • Estados • Não modificado e corrente; • Localmente modificado e corrente; • Não modificado e out-of-date; • Localmente modificado e out-of-date; • Comando que exibe o estado: svn status Estados da Cópia de Trabalho

  19. Subversion - Uso Básico XI Jornada de Informática • svn import • svn checkout Enviando e obtendo dados do repositório

  20. Subversion - Uso Básico XI Jornada de Informática Layout recomendado para o repositório

  21. Subversion - Uso Básico XI Jornada de Informática • Criar repositório • • svnadmin create /var/svn/airalliance • • chown -R www-data:www-data /var/svn/airalliance • • chmod -R 770 /var/svn/airalliance • • svn mkdir -m 'Estrutura Inicial' http://localhost/svn/airalliance/trunk • • svn mkdir -m 'Estrutura Inicial' http://localhost/svn/airalliance/branches • • svn mkdir -m 'Estrutura Inicial' http://localhost/svn/airalliance/tags • Enviando dados para o repositório • • svn import -m 'Import Inicial' http://localhost/svn/airalliance/trunk Ciclo básico de trabalho

  22. Subversion - Uso Básico XI Jornada de Informática • Ciclo básico de trabalho Criar uma cópia de trabalho svn checkout http://localhost/svn/airalliance/trunk /var/www/airalliance Submeter alterações • svn commit Atualizar sua cópia de trabalho • svn update Fazer alterações • svn add, svn delete, svn copy, svn move Examinar mudanças • svn status, svn diff Possivelmente desfazer algumas mudanças • svn revert Resolver conflitos • svn update, svn resolved

  23. Branching, tagging and merging XI Jornada de Informática O que é um Branch? Fonte: http://svnbook.red-bean.com/en/1.1/svn-book.pdf

  24. Branching, tagging and merging XI Jornada de Informática Usando Branches

  25. Branching, tagging and merging XI Jornada de Informática Trabalhando com branch Alternando: svn switch Fonte: http://svnbook.red-bean.com/en/1.1/svn-book.pdf

  26. Branching, tagging and merging XI Jornada de Informática Merging a Branch

  27. Branching, tagging and merging XI Jornada de Informática • Release Branches • Desenvolvedores submetem todo novo trabalho para o trunk. Correções, novas features; • Quando a equipe acha que software está pronto para o primeiro release (1.0 release) o trunk é copiado para um “release” branch (branches/1.0); • Uma equipe inicia os testes no branch enquanto outra continua o trabalho no trunk (para a versão 2.0) enquanto outra testa o branch, se um bug é encontrado ele é corrigido em ambos; • Quando os testes terminam o branch é copiado para tag/1.0.0 e disponibilizado para os clientes; • O branch é mantido, o trabalho no trunk continua e bugs encontrados vão sendo corrigidos e a correção é replicada para o branch, quando o número de correções é significativo é gerada a release tag/1.0.1 e disponibilizada para os clientes; Common Branching Patterns

  28. Branching, tagging and merging XI Jornada de Informática • Feature branches • Todo o trabalho é realizado no trunk; • Um branch é criado para modificações complexas; • Quando o trabalho termina ele é reintegrado ao trunk e deletado. Common Branching Patterns

  29. Clients XI Jornada de Informática • svn (linha de comando) • Clients integradas com IDE • Tortoise SVN • Outros: http://en.wikipedia.org/wiki/Comparison_of_Subversion_clients

  30. Dúvidas XI Jornada de Informática • lekitamura@gmail.com http://svnbook.red-bean.com/en/1.1/svn-book.pdf http://www.slideshare.net/lekitamura/controlando-projetos-com-netbeans-e-subversion

More Related