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

Conventional Commits

Conventional Commits

1b37057f6e0b65a16aad1e0120f49284?s=128

Ivan Rosolen

May 21, 2022
Tweet

More Decks by Ivan Rosolen

Other Decks in Technology

Transcript

  1. Conventional Commits

  2. Trabalho com tecnologia há 20+ anos. Apaixonado por padrões e

    resolver problemas complexos de maneira simples. Pai do Akira <3 Tech Manager @ Trybe @ivanrosolen I Ivan Rosolen
  3. I Contexto

  4. Thread

  5. I Código

  6. Git https://twitter.com/jairhenrique/status/1288521050511335424

  7. Git https://twitter.com/marcelgsantos/status/1503471381345976321

  8. Git https://maisquesenior.substack.com/p/augusto-pascutti “... Minha visão sobre o Git, por exemplo,

    é de que ele é uma ferramenta de comunicação, e como tal oferece várias oportunidades de observação. Ter mais adições que subtrações de código, num longo período de tempo, pode significar ausência de refactors. Com Git dá para saber se existem silos de informação, se o tamanho (complexidade) dos commits está aumentando ou diminuindo, quais partes do código concentram muita responsabilidade etc ...”
  9. Conventional Commits

  10. Vantagens - Comunicar a natureza das mudanças para pessoas da

    equipe, o público e outras partes interessadas - Descrever o motivo que levou a alteração ou adição de algo no código - Facilitar a contribuição de outras pessoas em seus projetos, permitindo que elas explorem um histórico de commits mais estruturado e com melhor rastreabilidade - Evitar commits: "Fix", "Correções", "Ajustes" … - Facilitar o versionamento semântico e criação de CHANGELOG
  11. Conventional Commits <tipo>(<escopo opcional>): <título> <corpo opcional> <rodapé opcional>

  12. Conventional Commits Tipo => Escopo => Corpo => Rodapé =>

    lista definida funcionalidade ou contexto da aplicação Descrição do que foi feito Link de referência (ticket jira, issue github …)
  13. Conventional Commits static: alterações no conteúdo de arquivos estáticos (dados

    .json, imagens, etc) cd: Alterações em nossos arquivos e scripts de configuração para CD docs: somente alterações na documentação feat: um novo recurso fix: uma correção de bug da aplicação improve: alguma alteração de código que melhore o comportamento de um recurso perf: uma alteração de código que melhora o desempenho refactor: uma alteração de código que não corrige um bug nem adiciona um recurso style: alterações que não afetam o significado do código (espaço em branco, formatação, ponto e vírgula, etc) test: Adicionando testes ausentes ou corrigindo testes existentes
  14. Conventional Commits feat: um novo recurso fix: uma correção de

    bug da aplicação refactor: alteração de código, que não corrige um bug e nem altera a forma como o usuário utiliza a aplicação improve: alguma alteração de código que melhore o comportamento de um recurso test: adicionando testes ausentes ou corrigindo testes existentes
  15. I Exemplos

  16. git log --oneline --no-merges -n5

  17. git log --oneline --no-merges -n20

  18. Conventional Commits - Antes fix scroll

  19. Conventional Commits - Depois fix(lista-ofertas): ajusta barra de rolagem horizontal

    para usuários windows Como usuários de windows não tem magic mouse, a rolagem horizontal na lista de ofertas de um job ficou ruim. Foi criada uma verificação do sistema operacional para mudar o comportamento da rolagem horizontal para usuários de MAC e de Windows Issue TP-12345
  20. Conventional Commits - Antes novas regras

  21. Conventional Commits - Depois improve(regras-gpa): atualiza lista de regras de

    ofertas GPA Com base em uma planilha csv alterada pelo cliente e PM, foi modificado o conjunto de regras de campos do XML para vincular templates/dinâmica, utilizando as novas regras da ABA "Regras 08/07 (V1.12)" Issue 2154
  22. Conventional Commits - Antes observação em templates específicos

  23. Conventional Commits - Depois feat(regras-cfo): adiciona regra no campo observação

    em templates CFO Adiciona condição na regra para preencher o campo ‘Observaçao_de_oferta’ para só executar em em dinamica XXX no template de YYYY. Texto padrão adicionado na constante: OBSERVACAO_REVISAO = '#Mesma marca, fabricante, tipo e preço de venda.'; Issue TP-9911
  24. Referências https://maisquesenior.substack.com/p/augusto-pascutti https://www.conventionalcommits.org/pt-br/v1.0.0/ https://gist.github.com/ivanrosolen/b5fc4f281b427949d24e849d982b888b https://unsplash.com (imagens)

  25. I Perguntas