curso de introdução ao git - in junior

57
Git (Aula 1) Bruno Schettino [email protected] 12/01/2015

Upload: bruno-schettino

Post on 20-Jul-2015

147 views

Category:

Software


4 download

TRANSCRIPT

Git

(Aula 1)

Bruno Schettino [email protected]

12/01/2015

Quem sou eu

Graduação: 2009 – 2013 Mestrado: 2013 - atual

Desenvolvedor / Líder Técnico / Gerente de Projetos 2011 - atual

Autônomo 2012 – atual

Sistemas de Controle de Versão

Como dois desenvolvedores

podem trabalhar no mesmo projeto de

desenvolvimento de software?

Como compartilhar código garantindo que nenhum trabalho foi sobrescrito ou perdido ?

Como manter o projeto?

Precisar reverter uma alteração?

Quiser saber como um método estava implementado antes de uma mudança?

E se...

Versionamento

Dimen

são  ESPA

ÇO

Dimen

são  ESPA

ÇO

Dimensão  TEMPO

...

Qual escolher?

Topologia?

Política de controle de concorrência?

Ramos?

Etiquetas?

Armazenamento?

Consultas ao histórico?

Ferramentas disponíveis?

Nessa apresentação

Ferramentas

Hospedagem

Clientes

Repositório

Topologia

Centralizada

Distribuída

Fluxo básico

Espaço de Trabalho e Índice

u  Espaço de Trabalho u  Área onde as mudanças são realizadas pelo usuário u  Arquivos são modificados, criados ou removidos

u  Índice u  Área temporária utilizada entre o repositório local e o espaço de trabalho u  Permite escolher quais mudanças feitas no espaço de trabalho serão adicionadas a um commit

HEAD

u  Ponteiro que controla em qual estado do repositório o sistema está trabalhando

u  Aponta para um commit

Adaptado de http://nbviewer.ipython.org/github/LUMC/programming-course/blob/master/images/git-remote.png

Criando o projeto no Bitbucket (Live demo?)

Criando o projeto no Bitbucket (Live demo?)

Criando o projeto no Bitbucket (Live demo?)

git status

git status

git add

git rm

git commit

git commit

git push

git clone

Para criar a chave pública: https://confluence.atlassian.com/pages/viewpage .action?pageId=270827678

git clone

git clone

git clone

git pull

Concorrência

O problema da concorrência

Política pessimista

Política otimista

Política otimista

Junção (Merge)

Reset e Checkout

git reset

git reset

git reset

git reset

git checkout

Dúvidas?

Até a próxima aula

[email protected]

facebook.com/bpschettino

github.com/bschettino

Bruno Schettino