Slide 1

Slide 1 text

Git do 0 ao 1 P O R AMANDA VILELA & & ANA GABRIEL

Slide 2

Slide 2 text

AMANDA VILELA Front-end & UI Designer ADS@Fatec Sorocaba ♥

Slide 3

Slide 3 text

ANA GABRIEL Web Developer ADS@Fatec Sorocaba ♥

Slide 4

Slide 4 text

wtf is git? and why should you care about it?

Slide 5

Slide 5 text

desenvolvimento organizado

Slide 6

Slide 6 text

breve história

Slide 7

Slide 7 text

1991-2002 .zip - Linux 2002-2005 DVCS - BitKeeper 2005-4ever Git

Slide 8

Slide 8 text

contexto git@2016

Slide 9

Slide 9 text

rápido design simples poderoso suporte a desenvolvimento não-linear totalmente distribuído capaz de atender projetos gigantescos

Slide 10

Slide 10 text

statistics && highlights > 35 milhões de projetos > 14 milhões de pessoas contribuindo ( ~ 70 maracanãs lotados) > 600 eventos em >45 países até final de 2013 https://github.com/showcases/social-impact https://github.com/thieman/github-selfies

Slide 11

Slide 11 text

No content

Slide 12

Slide 12 text

setup

Slide 13

Slide 13 text

sudo apt-get update sudo apt-get install git ssh-keygen -t rsa -b 4096 -C "[email protected]" eval "$(ssh-agent -s)" && ssh-add ~/.ssh/id_rsa

Slide 14

Slide 14 text

sudo apt-get update atualiza lista de repositórios do apt-get sudo apt-get install git instala git ssh-keygen -t rsa -b 4096 -C "[email protected]" gera chave SSH eval "$(ssh-agent -s)" && ssh-add ~/.ssh/id_rsa inicializa ssh-agent e adiciona chave gerada anteriormente ao mesmo

Slide 15

Slide 15 text

No content

Slide 16

Slide 16 text

https://git-for-windows.github.io

Slide 17

Slide 17 text

cat ~/.ssh/id_rsa.pub ctrl+c maroto https://github.com/settings/keys new SSH key && ctrl+v malandro

Slide 18

Slide 18 text

cat ~/.ssh/id_rsa.pub mostra conteúdo da chave pública no terminal ctrl+c maroto https://github.com/settings/keys new SSH key && ctrl+v malandro

Slide 19

Slide 19 text

criando um repositório

Slide 20

Slide 20 text

github.com

Slide 21

Slide 21 text

clonando um repositório

Slide 22

Slide 22 text

1. copie o endereço ssh 2. git clone 3. assista algum vídeo da carreta furacão

Slide 23

Slide 23 text

add adiciona arquivos e alterações à staging area git add README.md git add . git add **/* git add carretafuracao.txt weezer.txt foo.js bar.py

Slide 24

Slide 24 text

status mostra o estado do branch atual git status

Slide 25

Slide 25 text

commit comita arquivos e alterações anteriormente adicionados à staging área com add git commit -m "Inclui README em estado inicial" git commit -m "Corrige divergência de valores na view foo" git commit -m "Implementa testes pra nova funcionalidade fofao"

Slide 26

Slide 26 text

commit message boas práticas!

Slide 27

Slide 27 text

curta e objetiva começar com letra maiúscula não terminar com ponto final começar com um verbo imperativo http://chris.beams.io/posts/git-commit

Slide 28

Slide 28 text

git log git log --oneline git log --oneline --graph --pretty log mostra o histórico de commits

Slide 29

Slide 29 text

show mostra os detalhes de um commit específico git show git show git show b1db67f

Slide 30

Slide 30 text

diff mostra as diferenças de arquivos adicionados para commit git diff git diff carretafuracao.txt

Slide 31

Slide 31 text

checkout muda de branch OU desfaz alterações em arquivos que ainda não foram adicionados à staging área git checkout README.md git checkout . git checkout **/* git checkout carretafuracao.txt weezer.txt foo.js bar.py

Slide 32

Slide 32 text

reset reseta estado da branch atual para o estado de um commit específico OU remove arquivos da staging área git reset carretafuracao.txt git reset git reset HEAD --hard git reset 4a08b16

Slide 33

Slide 33 text

rm remove arquivos do versionamento do Git git rm carretafuracao.txt git rm -r

Slide 34

Slide 34 text

push envia alterações do branch atual pro branch remoto especificado git push git push origin dev git push origin HEAD

Slide 35

Slide 35 text

fetch realiza download de branches, tags e histórico remoto ou de alguma branch específica git fetch git fetch origin dev git push origin HEAD

Slide 36

Slide 36 text

merge junta um ou mais branches especificados no branch atual git merge carreta-refactor git merge carreta-refactor nova-funcionalidade git merge origin carreta-refactor

Slide 37

Slide 37 text

pull realiza fetch + merge do branch remoto especificado pro branch atual git pull carreta-refactor git pull carreta-refactor nova-funcionalidade git pull origin carreta-refactor

Slide 38

Slide 38 text

branch lista, cria ou deleta branches git branch -a git branch git branch carreta-refactor git branch -D git branch -D carreta-refactor

Slide 39

Slide 39 text

checkout muda de branch OU desfaz alterações em arquivos que ainda não foram adicionados à staging área git checkout git checkout carreta-refactor git checkout -b

Slide 40

Slide 40 text

stash esconde as alterações pendentes atuais num diretório separado git stash git stash pop git stash list git stash show

Slide 41

Slide 41 text

init cria um repositório vazio ou inicia um repositório existente mkdir myRepository && cd myRepository && git init git init myRepository

Slide 42

Slide 42 text

.gitignore

Slide 43

Slide 43 text

próximos passos

Slide 44

Slide 44 text

boas práticas && workflow http://nvie.com/posts/a-successful-git-branching-model/

Slide 45

Slide 45 text

boas práticas && commit messages http://chris.beams.io/posts/git-commit

Slide 46

Slide 46 text

documentação oficial https://git-scm.com/docs/git-init

Slide 47

Slide 47 text

https://github.com/thieman/github-selfies contribuindo forks & pull requests

Slide 48

Slide 48 text

fork a fork is a copy of a repository https://github.com/amandavilela/curso-git-2016

Slide 49

Slide 49 text

contribuindo issues & traduções https://azkaban.github.io/contributing.html

Slide 50

Slide 50 text

#comunidade #chegaMais

Slide 51

Slide 51 text

integrado sorocaba js meetup python- sorocaba hora extra sorocaba

Slide 52

Slide 52 text

python sorocaba - https://groups.google.com/forum/m/#!forum/python-sorocaba guru sorocaba - https://www.facebook.com/GURUSorocaba/ hacklab - https://www.facebook.com/hacklabsorocaba/ GDG Sorocaba - https://www.facebook.com/GDGSorocaba/ SorocabaJS - https://www.facebook.com/sorocabajs/ JS Meetup - http://www.meetup.com/GDG-Sorocaba/ WomenTechmakers - https://www.facebook.com/groups/wtmsorocaba/ in.tegra.do - http://www.meetup.com/In-Tegra-Do/ english meetup - http://www.meetup.com/Sorocaba-English-Conversation-Happy-Hours/ #chegaMais

Slide 53

Slide 53 text

[email protected] manda dúvidas amandavilela.com.br [email protected]