41
@americano git & GitHub Para iniciantes

Git e GitHub para iniciantes

Embed Size (px)

Citation preview

Page 1: Git e GitHub para iniciantes

@americano

git & GitHub Para iniciantes

Page 2: Git e GitHub para iniciantes

Knowledge worker

Estamos na era da informação e somos knowledge workers! Trabalhamos com a bunda sentada na cadeira, operando

um computador criando e editando documentos.

Page 3: Git e GitHub para iniciantes

Fluxo de trabalho

1. Criar um arquivo 2. Salva-lo 3. Editá-lo 4. Salva-lo de novo 5. etc.

Page 4: Git e GitHub para iniciantes

Vida de arquivo

Page 5: Git e GitHub para iniciantes

Controle de versão manual

Page 6: Git e GitHub para iniciantes

Podemos automatizar isso?

Para cada versão do documento, precisamos de saber:

1. Quando o arquivo foi modificado? 2. O que mudou? 3. Por que ele foi modificado?

Page 7: Git e GitHub para iniciantes

E tem mais… trabalhando em times

Page 8: Git e GitHub para iniciantes

Mais uma perguntinhaPara cada versão do documento, precisamos de saber:

1. Quando o arquivo foi modificado? 2. O que mudou? 3. Por que ele foi modificado? 4. Quem fez a modificação?

Page 9: Git e GitHub para iniciantes

Resumindo

Queremos uma ferramenta que:

1. “traqueie” a versão do documento 2. mantenha um histórico das mudanças

no documento 3. incentive o trabalho em grupo

Page 10: Git e GitHub para iniciantes
Page 11: Git e GitHub para iniciantes

Set up

Download e instale Git: http://git-scm.com/

Page 12: Git e GitHub para iniciantes

Setar ID

$ git config --global user.name "Sebastien Saunier”$ git config --global user.email "[email protected]"

Page 13: Git e GitHub para iniciantes

Comandos básicos

Page 14: Git e GitHub para iniciantes

Starting

$ mkdir new_project$ cd new_project$ git init

Page 15: Git e GitHub para iniciantes

Status

$ git status

git te informa se houve alguma mudança no diretório em que você está trabalhando (diretório sujo)

Page 16: Git e GitHub para iniciantes

Commit

Page 17: Git e GitHub para iniciantes

2-steps process

# Select which file to add to the commit.$ git add <file_1_which_has_been_modified>$ git add <file_2_which_has_been_modified>

# Take a snapshot of what is in the staging area.$ git commit --message "A meaningful message about this change"

Page 18: Git e GitHub para iniciantes

Diff

Use git status para saber se houve mudanças no diretório e use git diff para saber exatamente o que mudou:

$ git diff$ git diff <a_specific_file_or_folder>

Page 19: Git e GitHub para iniciantes

Log

Veja o histórico de commits

$ git log

Page 20: Git e GitHub para iniciantes

Branching

Page 21: Git e GitHub para iniciantes

One feature = One branch

Page 22: Git e GitHub para iniciantes

Branch

$ git branch my-feature

Page 23: Git e GitHub para iniciantes

Trabalhando no Branch

$ git checkout my-feature$ git commit (x2)

Page 24: Git e GitHub para iniciantes

Merge

$ git checkout master$ git diff master..my-feature$ git merge --no-ff my-feature

Page 25: Git e GitHub para iniciantes

Clean up

$ git branch -d my-feature

Page 26: Git e GitHub para iniciantes

Remote

Page 27: Git e GitHub para iniciantes
Page 28: Git e GitHub para iniciantes
Page 29: Git e GitHub para iniciantes

We need a remote!

Crie um repositório no GitHub: https://github.com/new

$ git remote add origin https://github.com/<user>/<project>.git

Page 30: Git e GitHub para iniciantes

Push

Compartilhe seu código com seu time (e com o mundo!)

# Generic command$ git push <remote> <branch>

# What we'll use$ git push origin master

Page 31: Git e GitHub para iniciantes

Pull

# Generic command$ git pull <remote> <branch>

# What we'll use$ git pull origin master

Page 32: Git e GitHub para iniciantes

Github Desktop app

desktop.github.com

Page 33: Git e GitHub para iniciantes
Page 34: Git e GitHub para iniciantes

Página de perfil

Page 35: Git e GitHub para iniciantes

Página de repositório

Page 36: Git e GitHub para iniciantes

Commits & Branches

Page 37: Git e GitHub para iniciantes

Pull requests

Page 38: Git e GitHub para iniciantes

Issues

Page 39: Git e GitHub para iniciantes

Forks

Colaboração open source

Page 40: Git e GitHub para iniciantes

Github pages

Hospedando seu site estático de graça!!

Repo example: lewagon/ui-components

Page 41: Git e GitHub para iniciantes

Obrigado!