--- slideOptions: transition: slide --- # Convenções Visando definir um padrão de implementação, fica definido os seguintes princípios: --- ## Branchs Principais Temos 3 branchs principais: **dev, homolog e main (master)**. A branch dev é definida como a branch default do projeto, sendo ela, destinada a armazenar a versão atual de desenvolvimento. Além das branchs principais, temos também as branchs auxiliares (em ordem decrescente de estabilidade:) ---- ### Main (master) `----` É definida como a branch principal do projeto, sendo ela, destinada a armazenar a versão mais estável do sistema (candidata a ser publicada em produção) ---- ### Homolog `----` Utilizada para armazenamento de código a ser publicado em ambiente de homologação, e que deverá ser homologado por equipe responsável (seja ela QA, produtos, ou desenvolvedores caso seja interessante ao contexto) e em caso de conformidade, o pacote fechado nessa branch, será elevado para a branch main(master). ---- ### Dev `----` Utilizada para armazenamento de código (seja de funcionalidade ou correção de bug) em desenvolvimento, não homologado e/ou, prova de conceito, bem como branch de publicação de funcionalidades em ambiente de desenvolvimento. --- ## Branchs auxiliares As branches de trabalho, ficam definidas como sendo aquelas em que os desenvolvedores realizarão qualquer tipo de atividade referente ao desenvolvimento de software e são estas: --- ## feature Utilizada para o desenvolvimento de novas funcionalidades do sistema. Deverá ser mesclada apenas com a branch development. --- ## bugfix Utilizada para a correção de bugs e comportamentos inesperados encontrados em estágio de homologação de funcionalidades do sistema. Deverá ser mesclada com a branch dev. --- ## hotfix Utilizada unica e exclusivamente para a correção de bugs e comportamentos inesperados encontrados em estágio de produção. Deverá ser mesclada com a branch main(master), e sincronizada com a branch de dev. ---