O PyAnalyticsGit é um projeto em Python criado por estudantes de Engenharia de Software da Universidade de Brasília - UnB. A biblioteca possibilita que o usuário consiga gerar relatórios automatizados a partir de um commit e com base nos dados do repositórios no GitHub como histórico de commits, nome do commit, branch, milestones e entre outros, gerar um relatório em markdown com gráficos e tabelas.
A biblioteca do PyAnalyticsGit deve ser capaz de analisar o desempenho de um projeto oferecendo no relatório parâmetros como taxa de commit por branch, fluxo de desenvolvimento por sprint, commits por usuário, entre outros.
Com essa ferramenta, é possível obter uma ampla variedade de dados e análises de projetos e repositórios do Git, incluindo gráficos e estatísticas. A biblioteca funciona recebendo os dados da API do GitHub e realizando a análise e tratamento dos dados de forma eficiente. Com essa solução, os usuários podem otimizar seus processos e aprimorar a gestão dos seus projetos do Git.
O PyAnalyticsGit tem como objetivo geral fornecer uma forma automatizada, eficiente e acessível de gerar relatórios com informações de projetos, progressos e as métricas com dados de repositórios no Github, afim de acompanhar e ter o controle do andamento daquele projeto. Desta forma, os principais objetivos que do PyAnalyticsGit é:
- Extrair informações relevantes de commits, issues e milestones do GitHub.
- Gerar relatórios em formato Markdown para facilitar a leitura e compartilhamento.
- Incluir gráficos e tabelas para apresentar visualmente as informações extraídas.
- Facilitar o acompanhamento do desenvolvimento do projeto e a tomada de decisões.
Inicialmente, é recomendável a utilização de um ambiente virtual, que pode ser criado através do venv:
Digite em seu terminal:
python3 -m venv myenv
Pronto, assim sera criado um ambiente virtual chamado "myenv"
Para ativar o ambiente:
source myenv/bin/activate
Vamos começar a instalar a biblioteca com o seguinte comando:
- Instale o sistema de gerenciamento de bibliotecas python “pip”
- Execute o comando em seu terminal:
pip install pyanalyticsgit
- Para verificar se a instalação ocorreu com sucesso execute em seu terminal:
pip show pyanalyticsgit
Após configurado e instalado a biblioteca o usuario poderá configurar a automação.
O usuário deve executar o arquivo a partir do diretório do Repositório no terminal (o diretório deve possuir o arquivo .git para a correta configuração).
Para verificar se seu diretório é um repositório verifique se tem o arquivo “.git” execute no terminal o comando: ls -a (pois o .git é uma pasta oculta).
Verificado isso deve importar a classe Automatiza:
from pyanalyticsgit.repo.automatiza import Automatiza
Após importar deve chamar o método automatiza():
Automatizar.automatiza()
Este método verifica qual o SO utilizado e cria o arquivo post-commit para automatizar
Ao executar o repositório estará automatizado e a cada commit será gerado um relatório em markdown. Após executar o método de automação não é necessário executar novamente. O usuário deve apagar o método caso for gerar um relatório Estático.
A cada evento de commit o git chama o scripty de monitoramento que executa a criação do relatório.
O relatório gerado estará em um arquivo docs/relatorio.md
-
.env:
- Deve ser criado um arquivo .env no ambiente de utilização da biblioteca e definir os valores de ‘user_name’(usuário ou repositório que contém o repositório que será gerado o relatório) e ‘repo_name’ (repositório desejado)
- Exemplo no repostirório https://github.com/fga-eps-mds/2023.1-PyAnalyticsGit.git :
-
O arquivo ‘.env’ deve estar assim para o exemplo acima:
user_name = "fga-eps-mds" repo_name = "2023.1-PyAnalyticsGit"
Gera relatórios de repositórios a partir da função “gerar_relatório” recebendo como parâmetros os valores de usuários e/ou repositórios existentes do github:
Para criar o relatório deverá ser importado a classe Relatorio:
from pyanalyticsgit.repo.relatorio import Relatorio
Ao importar o usuário cria uma instância da classe Relatorio e chama o método:
Relatorio().gerar_relatorio(’fga-eps-mds’,’2023.1-PyAnalyticsGit’)
Caso os parâmetros não sejam fornecidos, o relatório buscará os valores das variáveis de ambiente contidas em .env.
Gabriel Barbosa |
Jefferson Sena |
Mateus Levy |
Pedro Henrique |
Rodrigo Fonseca |
Tiago Albuquerque |
---|
O PyAnalyticsGit é licenciado sob o MIT License. licença.