Git conceitos
-
Upload
viniciusban -
Category
Software
-
view
156 -
download
0
description
Transcript of Git conceitos
Git – conceitos básicos
By @viniciusban
● REPOSITÓRIOuma cópia dos programas fonte
● COMMITsalva uma mudança no REPO (local)
● BRANCHfrente de trabalho independente e paralela
● MERGEjunta um branch no outro
● TAGdá nome a um commit
conceitos
REPOSITÓRIO
repositório
● Todos os programas do sistema
● Cada desenvolvedor tem uma cópia local
● REPO = localORIGIN = remoto
● Sincroniza com o ORIGIN
repositório
● PROS– BACKUP
– OFFLINE
– LOCAL & REMOTO
● CONS– TEMPO OFFLINE
● RECOMEND– NÃO TRABALHE SEM ELES
– SINCRONIZE SEMPRE
repositório
● QUANDO USAR?– Quando criar um projeto
– Mesmo se for um projeto de teste
$ git init .$ git clone <url_do_origin>
repositório
ORIGINREPO
● REPOSITÓRIOuma cópia dos programas fonte
● COMMITsalva uma mudança no REPO (local)
● BRANCHfrente de trabalho independente e paralela
● MERGEjunta um branch no outro
● TAGdá nome a um commit
conceitos
COMMIT
commit
● Inclui uma manutenção no repositório
● Representa uma unidade de trabalho
● Conta o que aconteceu
commit
● PROS– HISTÓRICO
– UNDO
● CONS– SE ACOSTUMAR
– TEXTOS RUINS
commit
● QUANDO USAR– Sempre que quiser gravar uma alteração de
código no repositório
$ git add meu_template.html$ git commit
● REPOSITÓRIOuma cópia dos programas fonte
● COMMITsalva uma mudança no REPO (local)
● BRANCHfrente de trabalho independente e paralela
● MERGEjunta um branch no outro
● TAGdá nome a um commit
conceitos
BRANCH
branch
● Frente de trabalho independente e paralela
● Crie um para cada tópico (feature, bug ou experimentos)
● Todo repositório tem o master
branch
● PROS– BARATO
– LOCAL
– INDEPENDÊNCIA
● CONS– SINCRONISMO
– ELES “BROTAM”
● RECOMEND– NA DÚVIDA, CRIE
– INTEGRE SEMPRE
– APAGUE LOGO
branch
● QUANDO USAR?– Quando for mexer em algum programa
$ git checkout -b novo_branch$ git branch$ git push origin novo_branch$ git pull origin master
● REPOSITÓRIOuma cópia dos programas fonte
● COMMITsalva uma mudança no REPO (local)
● BRANCHfrente de trabalho independente e paralela
● MERGEjunta um branch no outro
● TAGdá nome a um commit
conceitos
MERGE
merge
● Integra (“junta”) um branch com outro
merge
● PROS– AUTOMÁTICO
– SEGURO
● CONS– SHIT HAPPENS (AKA
CONFLITOS)
● RECOMEND– INTEGRE COM
FREQUÊNCIA
merge
● QUANDO USAR?– Quando a manutenção feita em um branch
funcionar e eu quiser integrar com o restante do sistema
$ git checkout master$ git merge novo_branch
● REPOSITÓRIOuma cópia dos programas fonte
● COMMITsalva uma mudança no REPO (local)
● BRANCHfrente de trabalho independente e paralela
● MERGEjunta um branch no outro
● TAGdá nome a um commit
conceitos
TAG
tag
● Dá nome a um commit
● Funciona como um commit
tag
● PROS– FACILITA
REFERÊNCIA
– SIMPLES
● CONS– NÃO VAI NO PUSH,
POR PADRÃO
tag
● QUANDO USAR– Sempre que quiser identificar um commit
específico
– Exemplo: versão do sistema
$ git tag -a v0.2.5 -m 'Corrige bugs #654 e #8723'$ git push origin --tags$ git checkout v0.2.5
● REPOSITÓRIOuma cópia dos programas fonte
● COMMITsalva uma mudança no REPO (local)
● BRANCHfrente de trabalho independente e paralela
● MERGEjunta um branch no outro
● TAGdá nome a um commit
conceitos
pull & push
● Integra REPO e ORIGIN
● REPOSITÓRIOuma cópia dos programas fonte
● COMMITsalva uma mudança no REPO (local)
● BRANCHfrente de trabalho independente e paralela
conceitos
● MERGEjunta um branch no outro
● TAGdá nome a um commit
● PULL & PUSHintegra REPO e ORIGIN
referências
● https://www.atlassian.com/git/tutorial ● http://zurb.com/university/lessons/34 ● http://www.git-scm.com/book