Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Porque você precisa aprender Git

1,825 views

Published on

Palestra ministrada no ALM Summit Brasil 2013.

Published in: Technology

Porque você precisa aprender Git

  1. 1. Giovanni Bassigiovanni@lambda3.com.br@giovannibassi
  2. 2.  Escalador, ciclista, pai Lambda3 Programador (a.k.a não gerente) C#, Ruby, Node, Coffeescript, Powershell, Bash... OO, Funcional, Estática, Dinâmica... Linux, Windows Desktop, web, mobile, game... Fundou o .NET Architects Tecnoretórica, blog, palestras, artigos, MVP… Trouxe a Scrum.org pro Brasil Gosta de “humanas” (gestão, coaching, psicologia...)@GiovanniBassi
  3. 3. Tenha cuidado,posso ser eu na suafrente
  4. 4. http://bit.ly/lambda3democraciaUma empresa democrática• Sem gerentes ou estrutura hierárquica• Livros abertos• Decisões por consenso• 100% ágil
  5. 5. Um sistema de controle deversão distribuído e opensource
  6. 6. Linha de comando?
  7. 7. Porque DVCS
  8. 8. Dev ARepoCentral1ABC2OKAYCESQUECI!OUTROCOMMIT!
  9. 9. Dev ARepoCentral1ABC1--amendDESQUECI!
  10. 10. --amend
  11. 11. 93230c5master HEAD= commit= branch= HEADorigin/masterclone
  12. 12. 93230c5 0ac78b6master HEAD= commit= branch= HEADorigin/mastercommit
  13. 13. 93230c5 0ac78b6 4ebf653master HEAD= commit= branch= HEADorigin/mastercommit
  14. 14. 93230c5 0ac78b6 4ebf653master HEAD= commit= branch= HEADpushorigin/master
  15. 15. Branch por diretórioC
  16. 16. Branch lógicoDBranches não são físicosSem confusão nos diretóriosUm branch é só um ponteiro pra um commitBranch atual é onde a HEAD apontaBranches podem ser apagadosMerge baseado em deltas e commitsIsso torna tudo muito mais fácil
  17. 17. 93230c5 0ac78b6c77926b4ebf653master HEADoutro= commit= branch= HEAD
  18. 18. 93230c5 0ac78b6c77926b4ebf653masteroutro= commit= branch= HEADgit checkout outro HEAD
  19. 19. Dev A Dev BRepoCentral1 2 3C
  20. 20. Dev A Dev BRepoCentral1 21,23C
  21. 21. Dev A Dev BRepoCentral1 23RepoCentral(Branch B)Integrar o branch!Merge!o/C
  22. 22. 93230c5 0ac78b6c77926b4ebf653masterHEADoutro= commit= branch= HEAD
  23. 23. 93230c5 0ac78b6c77926b4ebf653masterHEADoutro= commit= branch= HEADgit merge masterd4545ea
  24. 24. 93230c5 0ac78b6c77926b4ebf653masteroutro= commit= branch= HEADgit checkoutmasterd4545eaHEAD
  25. 25. 93230c5 0ac78b6c77926b4ebf653masteroutro= commit= branch= HEADgit merge outrod4545eaHEAD
  26. 26. 93230c5master= commit= branch= HEADHEAD
  27. 27. 93230c5 HEADoutro= commit= branch= HEADmaster git checkout –boutro
  28. 28. 93230c5c77926b HEADoutro= commit= branch= HEADgit commitmaster
  29. 29. 93230c5 0ac78b6c77926b4ebf653masterHEADoutro= commit= branch= HEADgit fetch
  30. 30. 93230c5 0ac78b6 z93af5b4ebf653masterHEAD outro= commit= branch= HEADgit rebase master
  31. 31. Dev A Dev B11,223QA43554Dev1,2,3,51,2,3,5Drebase!
  32. 32. http://git-scm.com/http://www.tecnoretorica.com.br/2012/05/dvcs/http://bit.ly/linusgithttp://progit.org/http://bit.ly/gitfrombottomuphttp://blog.lambda3.com.br/tag/git/
  33. 33. Giovanni Bassigiovanni@lambda3.com.br@giovannibassiDúvidas?
  34. 34. Giovanni Bassigiovanni@lambda3.com.br@giovannibassiObrigado!
  35. 35. www.lambda3.com.br

×