Guia de Contribuição
Este é o guia de contribuição para o projeto Sentinela, produzido pelos alunos de 2024.2. Este guia cobre os repositórios Usuários, Benefícios, Financeiro e Front-End. O objetivo deste documento é estabelecer um padrão claro e consistente para todas as contribuições feitas ao projeto, garantindo qualidade, organização e facilidade de colaboração entre os participantes.
As contribuições ao projeto devem ser iniciadas a partir das issues disponíveis no repositório de documentação, que podem ser acessadas por meio deste link. Antes de começar a trabalhar em uma issue, é importante entender e seguir as diretrizes descritas neste guia.
Para gerenciar o desenvolvimento do projeto, utilizamos o Git Flow. Este modelo organiza as branches de forma a separar o desenvolvimento contínuo do código e as versões estáveis. A branch principal, master, contém sempre as versões mais estáveis do código e deve ser utilizada apenas para o lançamento de novas versões do sistema.
As branches criadas para desenvolvimento devem seguir um padrão específico. O nome de cada branch deve conter o número da issue associada, seguido por uma descrição curta e significativa do problema ou funcionalidade a ser implementada. Por exemplo, uma branch para a issue número 42 sobre a implementação de login social poderia ser nomeada como 42-login-social
. Seguir esse padrão ajuda na identificação rápida do propósito de cada branch e melhora a organização do repositório.
No que diz respeito aos commits, é fundamental seguir um formato padronizado para manter a consistência e a clareza do histórico de alterações. Cada commit deve começar com um label que descreve o tipo de alteração realizada, seguindo as labels dos Conventional Commits . As principais labels são feat
para novas funcionalidades, fix
para correções de bugs, docs
para alterações na documentação, e test
para adição ou modificação de testes. Após o label, deve ser indicado o número da issue relacionada entre colchetes, seguido por uma mensagem curta e clara que descreva a alteração. Por exemplo: [feat:42] - Adiciona funcionalidade de login social
. Esse padrão facilita a rastreabilidade das mudanças e a compreensão do trabalho realizado.
Os Pull Requests (PRs) são uma etapa crucial no fluxo de trabalho e devem ser submetidos seguindo o template oficial do repositório. No início do PR, deve ser indicada a issue associada usando a seguinte estrutura: **Issue:** closes #X
, onde #X
é o número da issue correspondente. Em seguida, o PR deve conter uma seção chamada "Descrição", onde o autor explica detalhadamente as mudanças realizadas e como elas se relacionam com a issue associada. Essa descrição é essencial para que os revisores compreendam o escopo do trabalho e avaliem a qualidade e a relevância das alterações.
Para garantir a aceitação de um Pull Request, é necessário cumprir alguns requisitos. O PR deve ter um título descritivo e sucinto, um responsável atribuído como Assignee, um revisor designado como Reviewer, e rótulos (Labels) que identifiquem o tipo de alteração ou o estágio do PR. Além disso, a descrição do PR deve estar completa, seguindo o template descrito acima, e deve incluir a referência clara à issue associada. Somente PRs que tenham passado pelo processo de Integração Contínua (CI) e tenham sido revisados minuciosamente pelo responsável designado serão aceitos. Esse processo garante que o código enviado ao repositório esteja alinhado com os padrões de qualidade do projeto e não introduza falhas ou inconsistências.
Histórico de Versões
Versão | Nome da Versão | Data | Responsável | Descrição/Alterações |
---|---|---|---|---|
1.0 | Criação do documento | 07/12/2024 | Clara Marcelino | Criação do documento |