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

Introdução ao Git

Introdução ao Git

Minicurso realizado no SCTI 2011 na UENF

eduardohertz

November 09, 2011
Tweet

Other Decks in Technology

Transcript

  1. Problema • Projeto grande e extenso • Várias pessoas desenvolvendo

    funcionalidades simultaneamente • Sincronização
  2. Problemas dessa solução • Muitas pastas • Projetos grandes •

    Quais arquivos foram mudados? • Qual o tamanho (em MB) do projeto? • Manutenção • Quem se aventura?
  3. VCS • Version control system (Sistema de controle de versão)

    • SCM (Source code management) • 3 tipos de VCS: • LVCS • CVCS • DVCS
  4. 15 LVCS (Local VCS) • Banco de dados local •

    Desvantagens: • Não é possível colaborar • Queimou HD, já era!
  5. 16 CVCS (Centralized VCS) • Um servidor que contém o

    banco de dados • Vantagens • É possível colaborar • Queimou seu HD, beleza! • Desvantagens: • Necessidade de internet • Queimou servidor, já era! • Servidor fora do ar, todos parados
  6. 18 DVCS (Distributed VCS) • Um banco de dados no

    servidor • Cópia completa do projeto (com todas as alterações) • Vantagens • Não há necessidade de internet • Colaboração easy • Servidor queimou, don't worry
  7. 31 Operações locais • Não há necessidade de um servidor

    remoto • Todo projeto possui um banco de dados: • .git/
  8. 32 Integridade • TUDO no git é verificado • Usando

    SHA-1 • 40 caracteres: [a-f0-9]+ • 24b9da6552252987aa493b52f8696cd6d3b00373 • 24b9da
  9. 33 Começar do começo • Instalar git • http://www.google.com.br •

    Inicializar um projeto git • $ git init • Clonar um projeto git • $ git clone <URL>
  10. 36

  11. 37 Consertando commits • git commit –amend • git revert

    HEAD • git rebase –onto HEAD~1 HEAD
  12. 56 Referências • http://pt.wikipedia.org/wiki/Andrew_Tridgell • http://www.bitkeeper.com/ • http://github.com • http://oscarpangilinan.com/wp-content/uploads/2010/08/Nerd-46422.jpg

    • http://git-scm.com/ • http://www.slideshare.net/jmonteiro/como-colaborar-com-projetos-opensource-com-o-g • http://www.flickr.com/photos/drinksmachine/3239732078/