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

Controlo de Versões Distribuído com Git

Controlo de Versões Distribuído com Git

Apresentação realizada na 17a Reunião Presencial da Comunidade NetPonto (http://netponto.org) em Lisboa, sobre Controlo de Versões Distribuído utilizando o Git. Configuração, principais comandos, e workflows.

Gravação em vídeo:
http://www.youtube.com/watch?v=lTsAEhXkgms

C. Augusto Proiete

May 13, 2012
Tweet

More Decks by C. Augusto Proiete

Other Decks in Programming

Transcript

  1. Agenda • Introdução • Como usar / comandos básicos •

    Desenvolvimento em paralelo • Partilha de repositórios em equipa • Workflows mais comuns
  2. Git: O que é isto? • Sistema de Controlo de

    Versões –Desenvolvimento distribuído –Óptimo para desenvolvimento não-linear –Funciona fora do Visual Studio (!) –Rápido. Muito rápido! –Gratuito e Open Source – –Funciona fora do Visual Studio (!)
  3. Git: O que é isto? (cont.) • Começou a ser

    desenvolvido em Abril de 2005 pelo Linus Torvalds. É utilizado para manter o kernel do Linux há 5 anos • Actualmente mantido pelo Junio Hamano com outros 280+ developers
  4. Vantagem? • Pode fazer TUDO sem precisar do servidor! –Consultar

    toda a história do projecto desde o primeiro commit; –Obter versões mais antigas do projecto; –E o mais importante: Efectuar commits!!
  5. Comandos básicos do Git • git init –Criar um novo

    repositório do git • git status –Mostrar o que mudou desde o último commit • git add –Escolher o que fará parte do próximo commit • git commit –Gravar um novo commit
  6. Comandos básicos do Git (cont.) • git log / gitk

    [2] –Consultar os commits (história) • git reset –Mover o apontador “HEAD” • git config –Configurar opções globais ou do repositório [2] Não é exactamente um comando, mas uma aplicação
  7. Ficheiro .gitignore #Ignore thumbnails created by Windows Thumbs.db #Ignore files

    created by Visual Studio *.suo *.user [Oo]bj [Bb]in [Dd]ebug*/ [Rr]elease*/ _ReSharper*/
  8. Desenvolvimento em paralelo • git branch –Listar/Criar/Apagar branches • git

    checkout –Saltar entre branches (e não só) • git merge –Efectuar merge de branches • git mergetool –Ferramenta de merge (resolver conflitos)
  9. Partilha de repositórios em equipa • git clone –Obter uma

    cópia de um repositório remoto • git pull –Receber actualizações de um repositório • git push –Enviar actualizações para um repositório
  10. Referências Git Scm - Site oficial do Git – http://git-scm.com

    Posts sobre Git em meu blog – http://caioproiete.net/pt/tag/git/ Pro Git (e-book) – http://progit.org Git Ready (tutorial / tips) – http://www.gitready.com Git Magic (e-book) – http://www-cs-students.stanford.edu/~blynn/gitmagic
  11. Referências Git for Beginners – http://stackoverflow.com/questions/315911/git-for-beginners-the-definitive- practical-guide Why Git is

    Better than X – http://whygitisbetterthanx.com Git Is Your Friend not a Foe – http://hades.name/blog/2010/01/17/git-your-friend-not-foe A successful Git branching model – http://nvie.com/posts/a-successful-git-branching-model Use Git For What It Is Not Intended (UGFWIINI) – http://thread.gmane.org/gmane.comp.version-control.git/110411