14
GIT - Conceitos Rodrigo Cunha da Costa Programação distribuída UCPel -2013.1 Professor: Adenauer Correa Yamin

Git - Conceitos

Embed Size (px)

DESCRIPTION

Uma breve descrição dos conceitos que envolvem o Git e algumas funções básicas.

Citation preview

Page 1: Git - Conceitos

GIT - Conceitos

Rodrigo Cunha da CostaProgramação distribuída

UCPel -2013.1Professor: Adenauer Correa Yamin

Page 2: Git - Conceitos

Git - Conceitos 2

GIT - Conceitos

• O que é o Git?• Porque usar um VCS?• Como funciona um VCS• Tipos de Controle• Vantagens de usar o Git• Como usar o Git

05/03/2013

Page 3: Git - Conceitos

Git - Conceitos 3

O que é o Git?

• Um sistema de controle de versão de softwares (VCS – Version Control System)

• Ele é gratuito e com código aberto• Outros programas SVN, CVS, Perforce.

05/03/2013

Page 4: Git - Conceitos

Git - Conceitos 4

Porque usar um sistema um VCS

• Controle de histórico• Recuperação de versões estáveis• Trabalho em conjunto (Colaboração)• Controle de usuário• Ramificação do Projeto• Usados por várias IDEs (Eclipse, NetBens,

Dreamweaver...)

05/03/2013

Page 5: Git - Conceitos

Git - Conceitos 5

Como funciona um VCS

• Composto por duas partes :– Repositório – arquivos armazenados– Área de trabalho - local

• Sincronização de arquivos:– Commit: área de trabalho -> repositório– Update: repositório -> área de trabalho

• Controle– Cada Commit gera nova revisão no repositório

(data, modificações e autor)05/03/2013

Page 6: Git - Conceitos

Git - Conceitos 6

Tipos de Controle

• Controle de Versão Centralizado• Controle de Versão Distribuído

05/03/2013

Page 7: Git - Conceitos

Git - Conceitos 7

Controle de Versão Centralizado

• Segue a topologia Estrela • Um repositório e várias cópias

05/03/2013

Page 8: Git - Conceitos

Git - Conceitos 8

Controle de Versão Distribuído

• Vários repositórios autônomos e independentes

• Cada repositório possui uma área de trabalho acoplada

• Commit e update local

05/03/2013

Page 9: Git - Conceitos

Git - Conceitos 9

Controle de Versão Distribuído

• Um repositório se comunica com outro– Pull (Puxar) – Atualiza o repositório local com

alterações de um repositório origem– Push (Empurrar) – Envia alterações do repositório

local para outro repositório• A princípio não existe um repositório mais

importante.• Pode-se usar um repositório Central.

05/03/2013

Page 10: Git - Conceitos

Git - Conceitos 10

http://www.pronus.eng.br/artigos_tutoriais/gerencia_configuracao/conceitos_basicos_controle_versao_centralizado_e_distribuido.php?pagNum=405/03/2013

Page 11: Git - Conceitos

Git - Conceitos 11

Vantagens de usar o Git

• Tem como objetivo principal velocidade e desempenho

• Mais rápido que o SVN segundo (http://git-scm.com/about/small-and-fast)

• Usa Arquitetura de Controle de Versão Distribuído e com isso, múltiplos Backups

• Qualquer fluxo de trabalho

05/03/2013

Page 12: Git - Conceitos

Git - Conceitos 12

Vantagens de usar o Git

• Área de Teste (stanging area) : onde commits podem ser revisados antes de transferência. (opcional)

05/03/2013

Page 13: Git - Conceitos

Git - Conceitos 13

Referências

• http://git-scm.com/• http://djalmafilho.blogspot.com.br/2009/02/o

la-estou-aqui-mais-uma-vez-trazendo-o.html• http://www.pronus.eng.br/artigos_tutoriais/g

erencia_configuracao/conceitos_basicos_controle_versao_centralizado_e_distribuido.php

• http://www.pronus.eng.br/artigos_tutoriais/gerencia_configuracao/conceitos_basicos_controle_versao_centralizado_e_distribuido.php?pagNum=2

05/03/2013

Page 14: Git - Conceitos

Git - Conceitos 14

Perguntas

1. Qual melhor arquitetura? Centralizada ou Distribuída?

2. Qual a diferença de commit para update3. Qual diferença entre pull e puch

05/03/2013