SlideShare uma empresa Scribd logo
1 de 72
Baixar para ler offline
Desvendando o GIT
           Douglas Campos (qmx)
           douglas@theros.info
           http://qmx.me

terça-feira, 21 de julho de 2009
terça-feira, 21 de julho de 2009
Sumário




terça-feira, 21 de julho de 2009
Sumário
                 Introdução




terça-feira, 21 de julho de 2009
Sumário
                 Introdução
                 Mudando de Paradigma




terça-feira, 21 de julho de 2009
Sumário
                 Introdução
                 Mudando de Paradigma
                 Core GIT




terça-feira, 21 de julho de 2009
Sumário
                 Introdução
                 Mudando de Paradigma
                 Core GIT
                 Fluxos de Trabalho em Equipe




terça-feira, 21 de julho de 2009
Sumário
                 Introdução
                 Mudando de Paradigma
                 Core GIT
                 Fluxos de Trabalho em Equipe
                 Recuperação de Desastres




terça-feira, 21 de julho de 2009
Sumário
                 Introdução
                 Mudando de Paradigma
                 Core GIT
                 Fluxos de Trabalho em Equipe
                 Recuperação de Desastres
                 Boas Práticas



terça-feira, 21 de julho de 2009
terça-feira, 21 de julho de 2009
Introdução




terça-feira, 21 de julho de 2009
Introdução

                 BK




terça-feira, 21 de julho de 2009
Introdução

                 BK
                 Torvalds




terça-feira, 21 de julho de 2009
Introdução

                 BK
                 Torvalds
                 Kernel




terça-feira, 21 de julho de 2009
Introdução

                 BK
                 Torvalds
                 Kernel
                 ~45 dias do início à
                 produção!




terça-feira, 21 de julho de 2009
Introdução

                 BK
                 Torvalds
                 Kernel
                 ~45 dias do início à
                 produção!
                 Performático



terça-feira, 21 de julho de 2009
CVCS
           Há um ponto central, onde tudo acontece

terça-feira, 21 de julho de 2009
Repositório

                                   1   2           3     4




                                   A   B           C     D



           CVCS
           Há um ponto central, onde tudo acontece

terça-feira, 21 de julho de 2009
DVCS
           Não há ponto central
           (imposto pela ferramenta)
terça-feira, 21 de julho de 2009
Repositório?               A   E   B   C   D   F   G



                                                                                   José

                                                                       A       B    C     D   F
                                   João

                  A            E    B     C       D



                                                  A       E       B     C      D    F     G

                                                                      Felipe
           DVCS                                                                               ?
           Não há ponto central
           (imposto pela ferramenta)
terça-feira, 21 de julho de 2009
Mudança de Paradigma

terça-feira, 21 de julho de 2009
Commits
           Locais




terça-feira, 21 de julho de 2009
Commits
           Locais
           -Tem certeza?




terça-feira, 21 de julho de 2009
Commits
           Locais
           -Tem certeza?
           -Bom, se você quer
           descobrir que
           cometeu um erro
           depois de 200 linhas
           de código....

terça-feira, 21 de julho de 2009
Commits Pequenos




terça-feira, 21 de julho de 2009
Commits Pequenos
           Mas o meu código ainda está quebrado!




terça-feira, 21 de julho de 2009
Commits Pequenos
           Mas o meu código ainda está quebrado!
           Ninguém vai ficar sabendo!




terça-feira, 21 de julho de 2009
Commits Pequenos
           Mas o meu código ainda está quebrado!
           Ninguém vai ficar sabendo!
           E você vai começar a perceber o que está
           fazendo!



terça-feira, 21 de julho de 2009
GIT 101

terça-feira, 21 de julho de 2009
GIT 101
           Conceitos básicos

terça-feira, 21 de julho de 2009
Ao invés de se preocupar
                                   em armazenar o estado
                                   de uma peça, ele
                                   armazena sempre o
                                   estado do tabuleiro
                                   inteiro




terça-feira, 21 de julho de 2009
Ao invés de se preocupar
                                   em armazenar o estado
                                   de uma peça, ele
                                   armazena sempre o
                                   estado do tabuleiro
                                   inteiro




           Versionamento de Conteúdo

terça-feira, 21 de julho de 2009
Ao invés de se preocupar
                                                 em armazenar o estado
                                                 de uma peça, ele
                                                 armazena sempre o
                                                 estado do tabuleiro
                                                 inteiro




           Versionamento de Conteúdo
           O Git versiona o conteudo da árvore inteira

terça-feira, 21 de julho de 2009
terça-feira, 21 de julho de 2009
Uma pilha de alterações




terça-feira, 21 de julho de 2009
Uma pilha de alterações


                 Um commit não é nada
                 mais do que as
                 diferenças aplicadas à
                 árvore de código




terça-feira, 21 de julho de 2009
O Índice
           Tira um “snapshot” seletivo dos objetos da
           árvore
terça-feira, 21 de julho de 2009
Meus
                                   git add   Índice   git commit   Repositório
       Arquivos




           O Índice
           Tira um “snapshot” seletivo dos objetos da
           árvore
terça-feira, 21 de julho de 2009
Commit




terça-feira, 21 de julho de 2009
Commit

                 Coloca tudo que está
                 no indice dentro do
                 repositório




terça-feira, 21 de julho de 2009
Commit

                 Coloca tudo que está
                 no indice dentro do
                 repositório
                 São indicados por um
                 hash SHA único




terça-feira, 21 de julho de 2009
Repositório
           Grafo Acíclico Dirigido

terça-feira, 21 de julho de 2009
Branches
           Simples ponteiros dentro do grafo

terça-feira, 21 de julho de 2009
GIT 102
           Conhecendo mais a fundo

terça-feira, 21 de julho de 2009
Tópicos

                 Pesquisando
                 Fazendo Merges I
                 Mudando a História
                 Fazendo Merges II
                 Pedindo tempo




terça-feira, 21 de julho de 2009
Pesquisando
           “Em que arquivo ficava aquele método?”
           “Onde eu defini aquela task do rake?”
terça-feira, 21 de julho de 2009
git log -S'def index' --pickaxe-all




terça-feira, 21 de julho de 2009
Fazendo Merges - I
           Não-fast-forward

terça-feira, 21 de julho de 2009
Mudando a História
           “Se você pensa que eu vou fazer esse merge,
           pode tirar o cavalinho da chuva!”
terça-feira, 21 de julho de 2009
Fazendo Merges - II
           Primeiro fazemos um rebase

terça-feira, 21 de julho de 2009
Fazendo Merges - II
           Em seguida fazemos o merge mesmo
           Ele só vai mover o ponteiro do branch
terça-feira, 21 de julho de 2009
Pedindo tempo


                 “Corrija um bug para mim no branch de produção
                 agora!”
                 “Mas eu estava fazendo outra coisa!”




terça-feira, 21 de julho de 2009
GIT 103
           Psssst!

terça-feira, 21 de julho de 2009
Tópicos
                 Cherry-pick
                 Cherry
                 Bisect
                 Managing Remotes
                 Submódulos




terça-feira, 21 de julho de 2009
Cherry-pick

                 Essa correção tem que ir para a produção
                 imediatamente!
                 Mas ela está lá no meio das minhas coisas da versão
                 que ainda não saiu!
                       git cherry-pick pega um commit de qualquer lugar da
                       árvore e tenta aplicá-lo no branch atual.




terça-feira, 21 de julho de 2009
Cherry

                 Putz, corrigi esse bug na produção mês passado!
                 Você não aplicou a correção no desenvolvimento?
                       git cherry faz uma busca pelo conteúdo dos
                       commits para detectar quais não foram aplicados
                       em um determinado branch




terça-feira, 21 de julho de 2009
Bisect

                 “Mas eu já tinha
                 corrigido esse bug,
                 quem foi o......”
                       Pesquisa qual o
                       commit introduziu
                       determinado bug




terça-feira, 21 de julho de 2009
Gerenciando Remotos


                 git remote add <nome> <url>
                 git fetch <nome>
                 git push <nome> <branch>




terça-feira, 21 de julho de 2009
Submódulos

                 Uma maneira eficiente de agrupar projetos em
                 repositórios diferentes
                 Especialmente útil para projetos rails, onde os plugins
                 costumam ser hospedados no github
                       git submodule add <url> destino




terça-feira, 21 de julho de 2009
Fluxos de trabalho em
           Equipe




terça-feira, 21 de julho de 2009
Fluxos de trabalho em
           Equipe
                                          Servidor (gitosis)




                                   José                        Vera

                                                João



terça-feira, 21 de julho de 2009
Fluxos de trabalho em
           Equipe
                                          Servidor (gitosis)

     Branches
     Remotos


                                   José                        Vera

                                                João



terça-feira, 21 de julho de 2009
Fluxos de trabalho em
           Equipe
                                          Servidor (gitosis)

     Branches
     Remotos


                                   José                        Vera

                                                João

        Branches locais
terça-feira, 21 de julho de 2009
Recuperando Desastres
           O que fazer quando as coisas não vão indo bem

terça-feira, 21 de julho de 2009
Tópicos


                 Desfazendo alterações
                 Alterando a história




terça-feira, 21 de julho de 2009
Desfazendo alterações


                 git reset
                 git reset --mixed
                 git reset --hard




terça-feira, 21 de julho de 2009
Alterando a história
                 Commit indesejado?
                 Quer unificar commits?
                 Quer alterar a
                 mensagem do commit?
                 git rebase -i




terça-feira, 21 de julho de 2009
Dicas
                 git format-patch / git am

                       prepara commits para serem transmitidos por email

                 git bundle

                       transporte de branches em arquivo

                 git gc

                       limpeza do repositório (Garbage Collector)

                 git log --graph --oneline

                       visualização da árvore de commits no console




terça-feira, 21 de julho de 2009
git log --oneline --graph

terça-feira, 21 de julho de 2009
terça-feira, 21 de julho de 2009
Obrigado!




terça-feira, 21 de julho de 2009
Créditos / Bibliografia
                 InfoQ

                 The OOPS list

                 http://betterexplained.com

                 http://www.flickr.com/photos/cuppini/3211910657/sizes/l/

                 http://www.flickr.com/photos/denverjeffrey/2561885967/sizes/l/

                 http://www.flickr.com/photos/dianafayt/2314973004/sizes/l/

                 http://www.newsgroper.com/files/post_images/back%20to%20the%20future.jpeg

                 http://www.flickr.com/photos/nonoq8/2711265848/sizes/o/

                 http://www.flickr.com/photos/cc_chapman/498250339/sizes/l/




terça-feira, 21 de julho de 2009

Mais conteúdo relacionado

Destaque

AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Applitools
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at WorkGetSmarter
 

Destaque (20)

AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 
ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
 
More than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike RoutesMore than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike Routes
 

Desvendando O Git

  • 1. Desvendando o GIT Douglas Campos (qmx) douglas@theros.info http://qmx.me terça-feira, 21 de julho de 2009
  • 2. terça-feira, 21 de julho de 2009
  • 4. Sumário Introdução terça-feira, 21 de julho de 2009
  • 5. Sumário Introdução Mudando de Paradigma terça-feira, 21 de julho de 2009
  • 6. Sumário Introdução Mudando de Paradigma Core GIT terça-feira, 21 de julho de 2009
  • 7. Sumário Introdução Mudando de Paradigma Core GIT Fluxos de Trabalho em Equipe terça-feira, 21 de julho de 2009
  • 8. Sumário Introdução Mudando de Paradigma Core GIT Fluxos de Trabalho em Equipe Recuperação de Desastres terça-feira, 21 de julho de 2009
  • 9. Sumário Introdução Mudando de Paradigma Core GIT Fluxos de Trabalho em Equipe Recuperação de Desastres Boas Práticas terça-feira, 21 de julho de 2009
  • 10. terça-feira, 21 de julho de 2009
  • 12. Introdução BK terça-feira, 21 de julho de 2009
  • 13. Introdução BK Torvalds terça-feira, 21 de julho de 2009
  • 14. Introdução BK Torvalds Kernel terça-feira, 21 de julho de 2009
  • 15. Introdução BK Torvalds Kernel ~45 dias do início à produção! terça-feira, 21 de julho de 2009
  • 16. Introdução BK Torvalds Kernel ~45 dias do início à produção! Performático terça-feira, 21 de julho de 2009
  • 17. CVCS Há um ponto central, onde tudo acontece terça-feira, 21 de julho de 2009
  • 18. Repositório 1 2 3 4 A B C D CVCS Há um ponto central, onde tudo acontece terça-feira, 21 de julho de 2009
  • 19. DVCS Não há ponto central (imposto pela ferramenta) terça-feira, 21 de julho de 2009
  • 20. Repositório? A E B C D F G José A B C D F João A E B C D A E B C D F G Felipe DVCS ? Não há ponto central (imposto pela ferramenta) terça-feira, 21 de julho de 2009
  • 21. Mudança de Paradigma terça-feira, 21 de julho de 2009
  • 22. Commits Locais terça-feira, 21 de julho de 2009
  • 23. Commits Locais -Tem certeza? terça-feira, 21 de julho de 2009
  • 24. Commits Locais -Tem certeza? -Bom, se você quer descobrir que cometeu um erro depois de 200 linhas de código.... terça-feira, 21 de julho de 2009
  • 26. Commits Pequenos Mas o meu código ainda está quebrado! terça-feira, 21 de julho de 2009
  • 27. Commits Pequenos Mas o meu código ainda está quebrado! Ninguém vai ficar sabendo! terça-feira, 21 de julho de 2009
  • 28. Commits Pequenos Mas o meu código ainda está quebrado! Ninguém vai ficar sabendo! E você vai começar a perceber o que está fazendo! terça-feira, 21 de julho de 2009
  • 29. GIT 101 terça-feira, 21 de julho de 2009
  • 30. GIT 101 Conceitos básicos terça-feira, 21 de julho de 2009
  • 31. Ao invés de se preocupar em armazenar o estado de uma peça, ele armazena sempre o estado do tabuleiro inteiro terça-feira, 21 de julho de 2009
  • 32. Ao invés de se preocupar em armazenar o estado de uma peça, ele armazena sempre o estado do tabuleiro inteiro Versionamento de Conteúdo terça-feira, 21 de julho de 2009
  • 33. Ao invés de se preocupar em armazenar o estado de uma peça, ele armazena sempre o estado do tabuleiro inteiro Versionamento de Conteúdo O Git versiona o conteudo da árvore inteira terça-feira, 21 de julho de 2009
  • 34. terça-feira, 21 de julho de 2009
  • 35. Uma pilha de alterações terça-feira, 21 de julho de 2009
  • 36. Uma pilha de alterações Um commit não é nada mais do que as diferenças aplicadas à árvore de código terça-feira, 21 de julho de 2009
  • 37. O Índice Tira um “snapshot” seletivo dos objetos da árvore terça-feira, 21 de julho de 2009
  • 38. Meus git add Índice git commit Repositório Arquivos O Índice Tira um “snapshot” seletivo dos objetos da árvore terça-feira, 21 de julho de 2009
  • 39. Commit terça-feira, 21 de julho de 2009
  • 40. Commit Coloca tudo que está no indice dentro do repositório terça-feira, 21 de julho de 2009
  • 41. Commit Coloca tudo que está no indice dentro do repositório São indicados por um hash SHA único terça-feira, 21 de julho de 2009
  • 42. Repositório Grafo Acíclico Dirigido terça-feira, 21 de julho de 2009
  • 43. Branches Simples ponteiros dentro do grafo terça-feira, 21 de julho de 2009
  • 44. GIT 102 Conhecendo mais a fundo terça-feira, 21 de julho de 2009
  • 45. Tópicos Pesquisando Fazendo Merges I Mudando a História Fazendo Merges II Pedindo tempo terça-feira, 21 de julho de 2009
  • 46. Pesquisando “Em que arquivo ficava aquele método?” “Onde eu defini aquela task do rake?” terça-feira, 21 de julho de 2009
  • 47. git log -S'def index' --pickaxe-all terça-feira, 21 de julho de 2009
  • 48. Fazendo Merges - I Não-fast-forward terça-feira, 21 de julho de 2009
  • 49. Mudando a História “Se você pensa que eu vou fazer esse merge, pode tirar o cavalinho da chuva!” terça-feira, 21 de julho de 2009
  • 50. Fazendo Merges - II Primeiro fazemos um rebase terça-feira, 21 de julho de 2009
  • 51. Fazendo Merges - II Em seguida fazemos o merge mesmo Ele só vai mover o ponteiro do branch terça-feira, 21 de julho de 2009
  • 52. Pedindo tempo “Corrija um bug para mim no branch de produção agora!” “Mas eu estava fazendo outra coisa!” terça-feira, 21 de julho de 2009
  • 53. GIT 103 Psssst! terça-feira, 21 de julho de 2009
  • 54. Tópicos Cherry-pick Cherry Bisect Managing Remotes Submódulos terça-feira, 21 de julho de 2009
  • 55. Cherry-pick Essa correção tem que ir para a produção imediatamente! Mas ela está lá no meio das minhas coisas da versão que ainda não saiu! git cherry-pick pega um commit de qualquer lugar da árvore e tenta aplicá-lo no branch atual. terça-feira, 21 de julho de 2009
  • 56. Cherry Putz, corrigi esse bug na produção mês passado! Você não aplicou a correção no desenvolvimento? git cherry faz uma busca pelo conteúdo dos commits para detectar quais não foram aplicados em um determinado branch terça-feira, 21 de julho de 2009
  • 57. Bisect “Mas eu já tinha corrigido esse bug, quem foi o......” Pesquisa qual o commit introduziu determinado bug terça-feira, 21 de julho de 2009
  • 58. Gerenciando Remotos git remote add <nome> <url> git fetch <nome> git push <nome> <branch> terça-feira, 21 de julho de 2009
  • 59. Submódulos Uma maneira eficiente de agrupar projetos em repositórios diferentes Especialmente útil para projetos rails, onde os plugins costumam ser hospedados no github git submodule add <url> destino terça-feira, 21 de julho de 2009
  • 60. Fluxos de trabalho em Equipe terça-feira, 21 de julho de 2009
  • 61. Fluxos de trabalho em Equipe Servidor (gitosis) José Vera João terça-feira, 21 de julho de 2009
  • 62. Fluxos de trabalho em Equipe Servidor (gitosis) Branches Remotos José Vera João terça-feira, 21 de julho de 2009
  • 63. Fluxos de trabalho em Equipe Servidor (gitosis) Branches Remotos José Vera João Branches locais terça-feira, 21 de julho de 2009
  • 64. Recuperando Desastres O que fazer quando as coisas não vão indo bem terça-feira, 21 de julho de 2009
  • 65. Tópicos Desfazendo alterações Alterando a história terça-feira, 21 de julho de 2009
  • 66. Desfazendo alterações git reset git reset --mixed git reset --hard terça-feira, 21 de julho de 2009
  • 67. Alterando a história Commit indesejado? Quer unificar commits? Quer alterar a mensagem do commit? git rebase -i terça-feira, 21 de julho de 2009
  • 68. Dicas git format-patch / git am prepara commits para serem transmitidos por email git bundle transporte de branches em arquivo git gc limpeza do repositório (Garbage Collector) git log --graph --oneline visualização da árvore de commits no console terça-feira, 21 de julho de 2009
  • 69. git log --oneline --graph terça-feira, 21 de julho de 2009
  • 70. terça-feira, 21 de julho de 2009
  • 72. Créditos / Bibliografia InfoQ The OOPS list http://betterexplained.com http://www.flickr.com/photos/cuppini/3211910657/sizes/l/ http://www.flickr.com/photos/denverjeffrey/2561885967/sizes/l/ http://www.flickr.com/photos/dianafayt/2314973004/sizes/l/ http://www.newsgroper.com/files/post_images/back%20to%20the%20future.jpeg http://www.flickr.com/photos/nonoq8/2711265848/sizes/o/ http://www.flickr.com/photos/cc_chapman/498250339/sizes/l/ terça-feira, 21 de julho de 2009