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

Controlo de Versões Distribuído com Git

Sponsored · Ship Features Fearlessly Turn features on and off without deploys. Used by thousands of Ruby developers.

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

Avatar for Augusto Proiete

Augusto Proiete

May 13, 2012

More Decks by 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