Slide 1

Slide 1 text

GIT E GITHUB THIAGO SCALONE - @SCALONE

Slide 2

Slide 2 text

@SCALONE

Slide 3

Slide 3 text

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

Slide 4

Slide 4 text

CONTROLE DE VERSÃO

Slide 5

Slide 5 text

SOFTWARE

Slide 6

Slide 6 text

SOFTWARE A B C D

Slide 7

Slide 7 text

SOFTWARE A B C D

Slide 8

Slide 8 text

PEN DRIVE A B C D

Slide 9

Slide 9 text

NOOOOO A B C D

Slide 10

Slide 10 text

CONTROLE DE VERSÃO

Slide 11

Slide 11 text

CONTROLE DE VERSÃOHistórico

Slide 12

Slide 12 text

CONTROLE DE VERSÃOHistórico Trabalho em equipe

Slide 13

Slide 13 text

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

Slide 14

Slide 14 text

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

Slide 15

Slide 15 text

MÃO NA MASSA

Slide 16

Slide 16 text

VOCABULÁRIO

Slide 17

Slide 17 text

VOCABULÁRIO CHECKOUT

Slide 18

Slide 18 text

VOCABULÁRIO CHECKOUT 3 7 2 … 6 …

Slide 19

Slide 19 text

VOCABULÁRIO COMMIT

Slide 20

Slide 20 text

VOCABULÁRIO COMMIT 3 2 …

Slide 21

Slide 21 text

VOCABULÁRIO BRANCH

Slide 22

Slide 22 text

VOCABULÁRIO BRANCH 8 7 4 6 3 BRANCH A BRANCH B

Slide 23

Slide 23 text

VOCABULÁRIO MERGE

Slide 24

Slide 24 text

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

Slide 25

Slide 25 text

VOCABULÁRIO FORK

Slide 26

Slide 26 text

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

Slide 27

Slide 27 text

VOCABULÁRIO PULL REQUEST

Slide 28

Slide 28 text

VOCABULÁRIO PULL REQ. 7 6 3 SCALONE/PROJECT 8 4 3 USER/PROJECT BRANCH A BRANCH B

Slide 29

Slide 29 text

TIPOS DISTRIBUIDO CENTRALIZADO

Slide 30

Slide 30 text

CENTRALIZADO

Slide 31

Slide 31 text

CENTRALIZADO

Slide 32

Slide 32 text

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.

Slide 33

Slide 33 text

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

Slide 34

Slide 34 text

DISTRIBUIDO

Slide 35

Slide 35 text

DISTRIBUIDO

Slide 36

Slide 36 text

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

Slide 37

Slide 37 text

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) }

Slide 38

Slide 38 text

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)

Slide 39

Slide 39 text

SETUP

Slide 40

Slide 40 text

COMANDOS ▸ git init . ▸ git add . ▸ git commit ▸ git push ▸ git branch ▸ git checkout ▸ .gitignore

Slide 41

Slide 41 text

OPERAÇÕES LOCAIS WORKING DIRECTORY STAGING AREA GIT DIRECTORY STAGE FILES GIT ADD COMMIT GIT COMMIT -M “ADD FILE” CHECKOUT GIT CHECKOUT

Slide 42

Slide 42 text

GITHUB

Slide 43

Slide 43 text

GIT != GITHUB

Slide 44

Slide 44 text

GITHUB

Slide 45

Slide 45 text

GITHUB Repositório de código

Slide 46

Slide 46 text

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

Slide 47

Slide 47 text

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

Slide 48

Slide 48 text

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

Slide 49

Slide 49 text

GITHUB

Slide 50

Slide 50 text

GITHUBRede Social para Desenvolvedores

Slide 51

Slide 51 text

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

Slide 52

Slide 52 text

No content

Slide 53

Slide 53 text

GITHUB

Slide 54

Slide 54 text

GITHUB CV

Slide 55

Slide 55 text

MÃO NA MASSA

Slide 56

Slide 56 text

OBRIGADO @SCALONE THIAGO@SCALONE.COM.BR