Controle de Versão    Usando o GITPor Alexandre Rocha Lima e Marcondes
Objetivos da Apresentação5/15/2012   Alexandre Rocha Lima e Marcondes
O que é Controle de Versão ?                              • É um software que permite controlar e      O que é ?          ...
O que é um repositório ?                              • É como um banco de dados especializado       O que é ?            ...
História     Criado em     3 de Abril                                Motivação                                            ...
2005                                                                         Alcançou a                                   ...
Critérios            Linus Torvals buscou critérios de                    implementação   Aprender com o                  ...
Instalação  • Windows        – Putty        – MsysGIT        – TortoiseGIT 32 Bits e 64 Bits  • Linux        – $ apt-get i...
Os Menus                                                   Envia para o                                     Pega do       ...
Transporte de dados no GIT5/15/2012   Alexandre Rocha Lima e Marcondes
Conceito                                                                                  push                   add      ...
Conceito                                                                                                  push            ...
Dia-a-dia com o GIT       Edição de       arquivos e                                       Envio do Index       adição no ...
O Index5/15/2012   Alexandre Rocha Lima e Marcondes
O Index                                               Os arquivos                                                marcados ...
O Repositório Local5/15/2012   Alexandre Rocha Lima e Marcondes
Comentários em Commits5/15/2012   Alexandre Rocha Lima e Marcondes
Comentando BUGs            BUG-1234 : Correção na comunicação serial            * Limpeza de arquivos e identação melhorad...
Comentando Novos Recursos            FEATURE-1234 : Comunicação com dispositivo XYZ            * Separação da estrutura de...
Comentando Código que não Compila              BROKEN : Preparação para inclusão da funcionalidade FEATURE-1234           ...
Comentando Alterações na Versão              DLL 2.27.02              BUG-123 , BUG-345 , BUG-1234              FEATURE-12...
O Log de Alterações                                               O comentário do commit                                  ...
Blame – Quem mudou o que ?                                               Configure seu nome                               ...
Comparação Entre Versões                      Versões são                   numeradas por um                      Hash SHA...
Resumo   Use o Index a seu favor (com um add), ele pode guardar estados intermediários   Guarde diariamente seu trabalho n...
Upcoming SlideShare
Loading in …5
×

Controle de versão com o git

609 views
538 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
609
On SlideShare
0
From Embeds
0
Number of Embeds
14
Actions
Shares
0
Downloads
11
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Controle de versão com o git

  1. 1. Controle de Versão Usando o GITPor Alexandre Rocha Lima e Marcondes
  2. 2. Objetivos da Apresentação5/15/2012 Alexandre Rocha Lima e Marcondes
  3. 3. O que é Controle de Versão ? • É um software que permite controlar e O que é ? guardar diferentes versões de um mesmo arquivo Para que • Para facilitar o desenvolvimento de software em equipes dispersas usar ? • Para controlar versões do código fonte Como • Instalar o servidor e os clientes • Editar localmente os arquivos usar ? • Enviar as alterações para o repositório5/15/2012 Alexandre Rocha Lima e Marcondes
  4. 4. O que é um repositório ? • É como um banco de dados especializado O que é ? em guardar arquivos e suas diferentes versões Como • O GIT cria uma árvore que contem a estrutura dos arquivos e pastas funciona ? versionados Onde • O GIT é distribuído • Tem repositórios em todas as máquinas fica ? de desenvolvimento e no servidor central5/15/2012 Alexandre Rocha Lima e Marcondes
  5. 5. História Criado em 3 de Abril Motivação O uso do Bitkeeper como de 2005 servidor de controle de Linus Torvalds (o mesmo versões distribuído com criador do Linux) licença gratuita para os desenvolvedores do kernel do Linux foi revogado Linus Torvalds decidiu fazer ele mesmo o dele, pois os outros não tinham os recursos que ele queria5/15/2012 Alexandre Rocha Lima e Marcondes
  6. 6. 2005 Alcançou a Merge de performance múltiplos desejada Self-hosting branches • 29 de Abril • 7 de Abril • 18 de Abril Anúncio • 6 de Abril Criação • 3 de Abril5/15/2012 Alexandre Rocha Lima e Marcondes
  7. 7. Critérios Linus Torvals buscou critérios de implementação Aprender com o Suportar um Ter proteções Não seguir a CVS e fazer workflow fortes contra Ter uma linha do SVN sempre o distribuído corrupção de performance (“CVS done oposto em caso como o dados, acidental muito alta right”) de dúvida Bitkeeper ou maliciosa Não foi projetado como um clone, mas inspirado no Bitkeeper5/15/2012 Alexandre Rocha Lima e Marcondes
  8. 8. Instalação • Windows – Putty – MsysGIT – TortoiseGIT 32 Bits e 64 Bits • Linux – $ apt-get install git ssh openssh5/15/2012 Alexandre Rocha Lima e Marcondes
  9. 9. Os Menus Envia para o Pega do repositório repositório remoto remoto Lista as O mesmo Verifica todas alterações que alterações locais pull + push em arquivos Une duas Troca a versões árvore usada diferentes Coloca Cria uma arquivos no etiqueta de Index versão Envia para o repositório local5/15/2012 Alexandre Rocha Lima e Marcondes
  10. 10. Transporte de dados no GIT5/15/2012 Alexandre Rocha Lima e Marcondes
  11. 11. Conceito push add commit push release Repositório Repositório Alterações Index Distribuição Local Remoto Edições e Comando: Comando: Comando: Comando: gravações git add git commit git push git push diretamente Melhorias Empacote Compartilhe release nos arquivos em relação à cada versão o seu trabalho Versão Grave com versão coerente com a equipe final que freqüência, anterior Faça testes pelo menos pode ser pois a Adicone simples para uma vez a cada entregue máquina cada garantir a dois dias diretamente pode dar alteração integridade ao cliente problemas mais arrojada5/15/2012 Alexandre Rocha Lima e Marcondes
  12. 12. Conceito push add commit push release Repositório Repositório Alterações Index Distribuição Local Remoto Privado Desenvolvimento Volátil Cliente Produção Estável5/15/2012 Alexandre Rocha Lima e Marcondes
  13. 13. Dia-a-dia com o GIT Edição de arquivos e Envio do Index adição no para o Index repositório local com o commit Sincronismo com Synch ou um pull seguido de um push5/15/2012 Alexandre Rocha Lima e Marcondes
  14. 14. O Index5/15/2012 Alexandre Rocha Lima e Marcondes
  15. 15. O Index Os arquivos marcados são adicionados ao Index pelo TortoiseGIT quando se faz um commit5/15/2012 Alexandre Rocha Lima e Marcondes
  16. 16. O Repositório Local5/15/2012 Alexandre Rocha Lima e Marcondes
  17. 17. Comentários em Commits5/15/2012 Alexandre Rocha Lima e Marcondes
  18. 18. Comentando BUGs BUG-1234 : Correção na comunicação serial * Limpeza de arquivos e identação melhorada5/15/2012 Alexandre Rocha Lima e Marcondes
  19. 19. Comentando Novos Recursos FEATURE-1234 : Comunicação com dispositivo XYZ * Separação da estrutura de comunicação em funções diferentes * Envio de dados na serial com checksum inteligente * Troca de nome das funções internas5/15/2012 Alexandre Rocha Lima e Marcondes
  20. 20. Comentando Código que não Compila BROKEN : Preparação para inclusão da funcionalidade FEATURE-1234 * Funções de suporte * Refactoring da parte de leitura de arquivo * Teste de comunicação5/15/2012 Alexandre Rocha Lima e Marcondes
  21. 21. Comentando Alterações na Versão DLL 2.27.02 BUG-123 , BUG-345 , BUG-1234 FEATURE-1234 , FEATURE-234 , FEATURE 4565/15/2012 Alexandre Rocha Lima e Marcondes
  22. 22. O Log de Alterações O comentário do commit é importantíssimo ! Não se esqueça dele pois ele aparece no Log5/15/2012 Alexandre Rocha Lima e Marcondes
  23. 23. Blame – Quem mudou o que ? Configure seu nome no menu Settings para ter propriedade de parte do código5/15/2012 Alexandre Rocha Lima e Marcondes
  24. 24. Comparação Entre Versões Versões são numeradas por um Hash SHA15/15/2012 Alexandre Rocha Lima e Marcondes
  25. 25. Resumo Use o Index a seu favor (com um add), ele pode guardar estados intermediários Guarde diariamente seu trabalho no repositório local com um commit Sempre comente seus commits de forma adequada Teste bem seu trabalho antes de fazer um push Identifique os commits quebrados com BROKEN Envie seu trabalho freqüentemente, mas sempre faça pull antes para integrar seu trabalho com possíveis alterações de outros colaboradores5/15/2012 Alexandre Rocha Lima e Marcondes

×