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

Git e Github

Git e Github

Workshop de git realizado na Fatec Franca.

E822acb0564c5632aae69fef35f85b3d?s=128

Scalone

May 15, 2017
Tweet

Transcript

  1. GIT E GITHUB THIAGO SCALONE - @SCALONE

  2. @SCALONE

  3. AGENDA ▸ Controle de versão ▸ Mão na massa ▸

    Vocabulário ▸ Controle de versão centralizado ▸ Controle de versão distribuído ▸ Git ▸ Github ▸ Mão na massa
  4. CONTROLE DE VERSÃO

  5. SOFTWARE

  6. SOFTWARE A B C D

  7. SOFTWARE A B C D

  8. PEN DRIVE A B C D

  9. NOOOOO A B C D

  10. CONTROLE DE VERSÃO

  11. CONTROLE DE VERSÃOHistórico

  12. CONTROLE DE VERSÃOHistórico Trabalho em equipe

  13. CONTROLE DE VERSÃOHistórico Trabalho em equipe Ramificação

  14. CONTROLE DE VERSÃOHistórico Trabalho em equipe Marcação e resgate Ramificação

  15. MÃO NA MASSA

  16. VOCABULÁRIO

  17. VOCABULÁRIO CHECKOUT

  18. VOCABULÁRIO CHECKOUT 3 7 2 … 6 …

  19. VOCABULÁRIO COMMIT

  20. VOCABULÁRIO COMMIT 3 2 …

  21. VOCABULÁRIO BRANCH

  22. VOCABULÁRIO BRANCH 8 7 4 6 3 BRANCH A BRANCH

    B
  23. VOCABULÁRIO MERGE

  24. VOCABULÁRIO MERGE 7 4 6 3 BRANCH A BRANCH B

  25. VOCABULÁRIO FORK

  26. VOCABULÁRIO FORK 8 7 4 6 3 SCALONE/PROJECT 8 7

    4 6 3 USER/PROJECT
  27. VOCABULÁRIO PULL REQUEST

  28. VOCABULÁRIO PULL REQ. 7 6 3 SCALONE/PROJECT 8 4 3

    USER/PROJECT BRANCH A BRANCH B
  29. TIPOS DISTRIBUIDO CENTRALIZADO

  30. CENTRALIZADO

  31. CENTRALIZADO

  32. CVS (CONCURRENT VERSION SYSTEM) ▸ Checkout - Download de versão

    ▸ Commit - Envio de modificações ▸ Update - Atualização local ▸ Merge - Fusão total das modificações, sem histórico ▸ Lock - Bloqueia arquivo sendo alterado.
  33. SVN (SUBVERSION) ▸ Igual ao CVS ▸ Renomear - Renomear

    arquivo com histórico ▸ Mover - Mover arquivo com histórico ▸ Merge - Fusão total das modificações, sem histórico
  34. DISTRIBUIDO

  35. DISTRIBUIDO

  36. GIT ▸ Criado por Linus Torvalds ▸ Utiliza o sistema

    de arquivos .git, leve. ▸ Commit/Merge/Update - Offline ▸ Copia total do repositório ▸ Utiliza SHA1 para controle de alterações
  37. SHA1 7)if (argc >= 2) { 8) if (strcmp(argv[1], "thiago.scalone")

    == 0) { 9) printf("\nCowabunga!\n"); 10) } 11) 12) 13) if (strcmp(argv[1], "patrick.barcelos") == 0) { 14) printf("\nLet's go!\n"); 15) } 16) 17) if (strcmp(argv[1], "kaiopessoni") == 0) { 18) printf("\nWhat's up dude!\n"); 19) }
  38. SHA1 ^80ac8a2 (Thiago Scalone 2016-10-27 22:00:48 -0200 7) ^80ac8a2 (Thiago

    Scalone 2016-10-27 22:00:48 -0200 8) ^80ac8a2 (Thiago Scalone 2016-10-27 22:00:48 -0200 9) ^80ac8a2 (Thiago Scalone 2016-10-27 22:00:48 -0200 10) d88e5763 (AndreiaAlves 2016-10-27 22:53:35 -0200 11) 9c58d201 (JOhn 2016-10-27 22:52:23 -0200 12) f49e9a57 (Patrick 2016-10-27 22:44:04 -0200 13) f49e9a57 (Patrick 2016-10-27 22:44:04 -0200 14) f49e9a57 (Patrick 2016-10-27 22:44:04 -0200 15) 8fec1a93 (Patrick 2016-10-27 23:01:05 -0200 16) 936203a7 (Aluno 2016-10-27 22:39:21 -0200 17) 936203a7 (Aluno 2016-10-27 22:39:21 -0200 18) 8fec1a93 (Patrick 2016-10-27 23:01:05 -0200 19)
  39. SETUP

  40. COMANDOS ▸ git init . ▸ git add . ▸

    git commit ▸ git push ▸ git branch ▸ git checkout ▸ .gitignore
  41. OPERAÇÕES LOCAIS WORKING DIRECTORY STAGING AREA GIT DIRECTORY STAGE FILES

    GIT ADD <FILE> COMMIT GIT COMMIT -M “ADD FILE” CHECKOUT GIT CHECKOUT <BRANCH>
  42. GITHUB

  43. GIT != GITHUB

  44. GITHUB

  45. GITHUB Repositório de código

  46. GITHUB Repositório de código coloboração

  47. GITHUB Repositório de código coloboração discussão

  48. GITHUB Repositório de código coloboração distribuição discussão

  49. GITHUB

  50. GITHUBRede Social para Desenvolvedores

  51. GITHUB ▸ Criado em 2007 (público em 2008) ▸ São

    Francisco ▸ Open Source Free ▸ Private Pago ▸ Receita $140M anual ▸ Github Pages ▸ 3 M users + 10M repos
  52. None
  53. GITHUB

  54. GITHUB CV

  55. MÃO NA MASSA

  56. OBRIGADO @SCALONE THIAGO@SCALONE.COM.BR