Ferramenta Gource

O que é o Gource?

Gource é um software que permite a visualização do desenvolvimento de projetos a partir de informações gerenciadas pelos softwares de controle de versão, como o SubversionBazaarMercurial ou Git (no nosso caso usamos o SVN).

Ele cria uma animação 3D de todo o histórico de versionamento do projeto, para isso ele utiliza informações do sistema de controle de versão que foi utilizado, tais como as datas das modificações, os arquivos modificados e os usuários que efetuaram as modificações através de seus ‘commits‘.

Você instala e através de comandos, ele realiza a captura de informações do SVN (informações até o momento), ou seja, você pode rodar apenas no final do projeto sem problemas. É possível através de comandos estabelecer parâmetros de configuração como: um período de tempo e etc.

Mais detalhes:

Gource é uma ferramenta gráfica criada com o propósito não de gerenciar o seu repositório, mas sim de mostrar o histórico do seu repositório de uma forma mais….animada, com cada pessoa sendo representada por um boneco em um ambiente 3D e com o projeto sendo representado por uma árvore, no qual as folhas correspondem a arquivos e diretórios são representados por ramos.

Com ele, é possível visualizar o que cada pessoa fez em cada momento da história do projeto. Você consegue ver, por exemplo, quem criou o repositório, fez os primeiros commits e que arquivos foram feitos primeiro. Ao longo da história do projeto, a árvore vai ficando mais complexa, e pessoas que deixaram de trabalhar no mesmo automaticamente vão desaparecendo.

O mais legal do Gource é que, como o projeto todo é representado por uma árvore, é possível ver facilmente a movimentação da pessoa em cada commit do projeto. Se o projeto no qual você trabalha, por exemplo, é bem separado por pastas, é normal ver que os contribuidores, ao comittar, normalmente mexem em várias pastas ao mesmo tempo, e a partir disso você consegue ver a “movimentação” do mesmo dentro do projeto.

Outra característica que merece destaque é o fato de que o Gource é compatível com variados tipos de repositório, não só os Git. Logo, se você trabalha em um repositório SVN, por exemplo, vai ser possível ver o histórico do seu projeto da mesma forma que seria caso você estivesse usando um repositório Git, facilmente.

A seguir, deixo o link para o vídeo do Gource rodando sob o repositório do Linux, que tem commits que vão  de 1991 até a data em que o vídeo foi postado (e como o vídeo foi postado esse ano, 2015, tá valendo..). Note que o vídeo tem quase 2 horas de duração, logo, talvez você possa não ter paciência para vê-lo todo…:P

https://youtu.be/5iFnzr73XXk

links para o projeto:

Como Instala-lo no Windows?

Acho que essa é a parte mais chatinha do Gource: instalação.

Para começar a instalação, precisaremos de três softwares: TortoiseSVN, Gource e Slik-Subversion.

Caso não tenham em sua máquina esses softwares, abaixo o link para download:

http://tortoisesvn.net/downloads.html

http://www.sliksvn.com/en/download

https://code.google.com/p/gource/downloads/list

Bom, primeiramente é necessário instalar o TortoiseSVN. A instalação é bem simples, só é necessário executar o instalador e ‘clicar’ no botão Next em todas as telas.

Como Instala-lo no Ubuntu 16,04?

sudo apt-get update

sudo apt install gource

Executar dentro do projeto de trabalho.

gource -f -s 60

Para utiliza-lo e gerar a visualização da animação do seu projeto é necessário que em sua máquina tenha a pasta do projeto pelo SVN. Caso não tenha, crie uma nova pasta e dê checkout nela, preencha as informações sobre o caminho, senha e usuário e o download do conteúdo da pasta será feito.

Para gerar a visualização é utilizaremos o comando –Gource, segue as instruções abaixo:

Abra o prompt de comando, entre no caminho em que esta localizada a pasta pelo SVN (para isso dê o comando ‘cd + caminho’) e digite o comando gource e dê Enter, abrirá uma tela com a animação.

Obs. A primeira vez que você roda o comando Gource no prompt, ele pede senha e usuário.

Alguns Comandos:

gource –h (é o help, onde abre o menu)

gource –f  (abre a animação em fullscreen)

gource -s 1 (exibe a animação um dia por segundo)

gource –start-position 0.5 –stop-position 0.7 (Comando que específica um período do história do projeto para exibição)

gource –key (Exibe as cores usadas para cada extensão de arquivo e o número atual de arquivos com essa extensão listados em ordem decrescente)

 

 

Renato Lucena 2018

Renato Lucena

Developer PHP, Laravel. Goiania-GO https://www.linkedin.com/in/renato-de-oliveira-lucena-33777133/

Você pode gostar...