Upgrade to Pro — share decks privately, control downloads, hide ads and more …

GIT - Além do versionamento

GIT - Além do versionamento

Palestra dada na primeira semana acadêmica do curso de Tecnologia em Analise e desenvolvimento de sistema do Instituto Federal de Educação, Ciência e Tecnologia Sul-rio-grandense‎ campus Bagé (IFSul-Bagé)

Avatar for Rodrigo Freitas

Rodrigo Freitas

October 04, 2017

Other Decks in Technology

Transcript

  1. O que veremos ? - Olá ;) - O GIT

    - Histórinhas... - Básico instalação - Básico configuração - Importante - Humm, vamos ver como funciona? - Rastreabilidade - Além do versionamento...
  2. “The two most important days in your life are the

    day you are born and the day you find out why.” Mark Twain
  3. Oi ;) Rodrigo Freitas Full stack web developer Twitter: @__RFreitas

    Facebook: /rodrigo.figueiradefreitas Linkedin: https://bit.ly/2F8T4gV Github: /RFigueira email: [email protected]
  4. GIT, nunca vi nem comi, só ouço falar... Git é

    um sistema de controle de versão de arquivos. Através deles podemos desenvolver projetos na qual diversas pessoas podem contribuir simultaneamente, editando e criando novos arquivos e permitindo que os mesmos possam existir sem o risco de suas alterações serem sobrescritas.
  5. GIT, a história O kernel (núcleo) do Linux é um

    projeto de software de código aberto de escopo razoavelmente grande. Durante a maior parte do período de manutenção do kernel do Linux (1991-2002), as mudanças no software eram repassadas como patches e arquivos compactados. Em 2002, o projeto do kernel do Linux começou a usar um sistema DVCS proprietário chamado BitKeeper.
  6. GIT, a história continua Mas… Em 2005, o relacionamento entre

    a comunidade que desenvolvia o kernel e a empresa que desenvolvia comercialmente o BitKeeper se desfez, e o status de isento-de-pagamento da ferramenta foi revogado. Isso levou a comunidade de desenvolvedores do Linux (em particular Linus Torvalds, o criador do Linux) a desenvolver sua própria ferramenta baseada nas lições que eles aprenderam ao usar o BitKeeper.
  7. Git, a história continua, objetivos - Velocidade - Design simples

    - Suporte robusto a desenvolvimento não linear (milhares de branches paralelos) - Totalmente distribuído - Capaz de lidar eficientemente com grandes projetos como o kernel do Linux (velocidade e volume de dados)
  8. Vamos ao básico, Instalando - WIN Em http://msysgit.github.com, como next,

    next, next e finish - LINUX - Bom e velho terminal $ sudo apt-get install git - OS X http://sourceforge.net/projects/git-osx-installer/ ou via MacPorts $ sudo port install git-core +svn +doc +bash_completion +gitweb
  9. Vamos ao básico, Configurando - Sua Identidade $ git config

    --global user.name "Rodrigo Freitas" $ git config --global user.email [email protected] Obs: Também é possível fazer outros tipos de configurações tais como: - Seu Editor ( quando o Git precisar que você digite uma mensagem); - Sua Ferramenta de Diff (utilizada para resolver conflitos de merge) - ... Diagrama, vamos entender juntos
  10. Rastreabilidade Uma das grande vantagens de utilizar git ou sistemas

    de versionamento está em uma palavra simples rastreabilidade, com isso podemos saber o que foi modificado em cada commit, mas para isso precisamos informar de forma correta as coisas. Vamos ver alguns exemplos reais: - que vocês me dizem disso? - e disso? Qual tem a melhor rastreabilidade?
  11. Rastreabilidade As mensagens dos commits devem ajudar para: - Acelerar

    a revisão. (code review) - Escrever uma boa nota de lançamento. (release notes) - Futuros desenvolvedores, ou ajudar a descobrir porque uma mudança foi feita no código ou porque uma funcionalidade foi adicionada
  12. Além do versionamento O git também pode deve ser utilizado

    para disseminação de conhecimento em um time de desenvolvimento. Tá amiguinho mas como posso fazer isso? Simples utilizando um processo chamado code review. O code review pode servir pra muitas coisas como: ( Elogios(sim porque não?) por um código bem escrito, melhoria de código, prevenção de bug e transparência entre o time) - Exemplo 1 - Exemplo 2 - Exemplo 3
  13. Obrigado SAADS-2017! Rodrigo Freitas Full stack web developer Twitter: @__RFreitas

    Facebook: /rodrigo.figueiradefreitas Linkedin: https://bit.ly/2F8T4gV Github: /RFigueira email: [email protected]