https://github.com/andrehora/exploring-code-evolution
https://github.com/andrehora/exploring-code-evolution
Last synced: 5 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/andrehora/exploring-code-evolution
- Owner: andrehora
- Created: 2025-04-23T18:55:51.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-04-24T23:11:03.000Z (about 1 year ago)
- Last Synced: 2025-06-03T18:59:29.137Z (about 1 year ago)
- Size: 30.3 KB
- Stars: 1
- Watchers: 1
- Forks: 47
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Explorando evolução de código
Neste exercício, iremos explorar a evolução de código em sistemas reais.
Iremos utilizar a ferramenta [GitEvo](https://github.com/andrehora/gitevo).
Essa ferramenta analisa a evolução de código em repositórios Git nas linguagens Python, JavaScript, TypeScript e Java, e gera relatórios `HTML` como [este](https://andrehora.github.io/gitevo-examples/python/pandas.html).
Mais exemplos de relatórios podem ser podem ser encontrados em https://github.com/andrehora/gitevo-examples.
# Passo 1: Selecionar repositório a ser analisado
Selecione um repositório relevante na linguagem de sua preferência (Python, JavaScript, TypeScript ou Java).
Você pode encontrar projetos interessantes nos links abaixo:
- Python: https://github.com/topics/python?l=python
- JavaScript: https://github.com/topics/javascript?l=javascript
- TypeScript: https://github.com/topics/typescript?l=typescript
- Java: https://github.com/topics/java?l=java
# Passo 2: Instalar e rodar a ferramenta GitEvo
> [!NOTE]
> Antes de instalar a ferramenta, é recomendado criar e ativar um [ambiente virtual Python](https://packaging.python.org/en/latest/guides/installing-using-pip-and-virtual-environments/#create-and-use-virtual-environments).
Instale a ferramenta [GitEvo](https://github.com/andrehora/gitevo) com o comando:
```
$ pip install gitevo
```
Execute a ferramenta no repositório selecionado utilizando o comando abaixo (ajuste conforme a linguagem do repositório).
Substitua `` pela URL do repositório que será analisado:
```shell
# Python
$ gitevo -r python
# JavaScript
$ gitevo -r javascript
# TypeScript
$ gitevo -r typescript
# Java
$ gitevo -r java
```
Por exemplo, para analisar o projeto Flask escrito em Python:
```
$ gitevo -r python https://github.com/pallets/flask
```
> [!NOTE]
> Essa etapa pode demorar alguns minutos pois o projeto será clonado e analisado localmente.
# Passo 3: Explorar o relatório de evolução de código
Após executar a ferramenta [GitEvo](https://github.com/andrehora/gitevo), é gerado um relatório `HTML` contendo diversos gráficos sobre a evolução do código.
Abra o relatório `HTML` e observe com atenção os gráficos.
# Passo 4: Explicar um gráfico de evolução de código
Selecione um dos gráficos de evolução e explique-o com suas palavras.
Por exemplo, você pode:
- Detalhar a evolução ao longo do tempo
- Detalhar se as curvas estão de acordo com boas práticas
- Explicar grandes alterações nas curvas
- Explorar a documentação do repositório em busca de explicações para grandes alterações
- etc.
Seja criativo!
# Instruções para o exercício
1. Crie um `fork` deste repositório (mais informações sobre forks [aqui](https://docs.github.com/pt/pull-requests/collaborating-with-pull-requests/working-with-forks/fork-a-repo)).
2. Adicione o relatório `HTML` no seu fork.
3. No Moodle, submeta apenas a URL do seu `fork`.
Responda às questões abaixo diretamente neste arquivo `README.md` do seu fork:
1. Repositório selecionado:
2. Gráfico selecionado:
3. Explicação: