Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Controle de Versões com GIT

Controle de Versões com GIT

Fundamentos sobre a ferramenta de controle de versões distribuída GIT

Gustavo Pantuza

November 29, 2012
Tweet

More Decks by Gustavo Pantuza

Other Decks in Programming

Transcript

  1. Controle de Versões com GIT Gustavo Pantuza: http://pantuza.com II Semana

    da Computação - Instituto Federal Sudeste de Minas 29.11.2012
  2. Agenda • Introdução • Arquitetura e Funcionamento • Fluxo de

    Trabalho • Git Distribuído • Git Hub • Considerações Finais • Referências • Perguntas
  3. Introdução

  4. Introdução • Sistema distribuído de controle de versões • Criado

    pela comunidade do Kernel do GNU/Linux • Completamente Aberto - código fonte • Escrito em C • Multiplataforma (windows, mac e GNU/Linux) • Vasta Documentação • Fácil utilização • Comunidade Forte
  5. Arquitetura e Funcionamento • Grafo direcionado acíclico

  6. Arquitetura e Funcionamento • Fluxo de operações no repositório local

  7. Arquitetura e Funcionamento • Transição de estados de um arquivo

  8. Arquitetura e Funcionamento • Troca de contexto sem atrito (branches)

    • Fluxo de trabalho baseado em funcionalidades • Experimentação descartável
  9. Arquitetura e Funcionamento • Referência de commits entre branches

  10. Arquitetura e Funcionamento • Hierarquia de commits

  11. Fluxo de Trabalho • Voltar para uma revisão antiga (checkout,

    reset) • Esconder modificações (git stash) • Remover arquivos (git rm --cached) • Analisar histórico/log (git log --graph) • Fundir branches (git merge) • Resolvendo conflitos • Personalizando o git (git config e bash completion)
  12. Git Distribuído • Conceito de Sistemas Distribuídos: "Um sistema distribuído

    é aquele no qual os componentes localizados em computadores interligados em rede se comunicam e coordenam suas ações apenas passando mensagens." (COULORIS, 2007, p.15) • COULORIS, GEORGE; DOLLIMORE, JEAN; KINDBERG TIM; Sistemas Distribuídos Conceitos e Projeto; tradução João Tortello. 4 ed. Porto Alegre. Bookman 2007. 792 p. ISBN: 978-85-60031-49-8
  13. Git Distribuído • Repositório Compartilhado

  14. Git Distribuído • Repositório Descentralizado

  15. Git Hub

  16. Git Hub

  17. Git Hub • Rede Social de projetos (públicos e privados)

    • Controle de contribuidores (forks) • Ferramenta de busca de código • Análise gráfica dos repositórios • Criação de issues (erros, falhas e melhorias) • Notificação de pull requests (contribuições)
  18. Considerações Finais • Facilite seu trabalho com git • git

    é fácil de aprender • Envolva-se com software livre • Crie um perfil no Git Hub e disponibilize projetos • Contribua para uma sociedade de conhecimento livre • Agrupe-se e crie projetos/produtos • Compartilhe conhecimento
  19. Referências • The Architecture of Open Source Applications - GIT

    • Git - Documentation • Git for Computer Scientists • Git From The Bottom Up • Pro Git • Git Cheat Sheet
  20. Perguntas http://github.com/pantuza http://twitter. com/gpantuza gustavopantuza@gmail.com

  21. Perguntas http://github.com/pantuza http://twitter.com/gpantuza gustavopantuza@gmail.com Obrigado : )