Deixando suas contribuições "verde"
Tags: shell, github, git, ptbr
Published: 2020-06-08 22:06:12

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/7p0m3nqcinxsvt7fsw5p.png)

Se você abriu esse post com o intuito de obter dicas sobre como ficar mais produtivo, então acho que você pode perder seu tempo lendo esse artigo, mas caso esteja curioso como deixar o seu github "verdinho" sem fazer nada, aqui é o seu lugar.:joy:

## OK, mas como faço isso?

Eu fiz um script em shell script (que tive que aprender um pouco no processo) que gera um repositório com ***commits*** entre datas que o usuário escolher.

# :joy: Lazy

O script gera um repositório e o preenche com ***commits*** entre datas passadas por argumento
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/kxnns4x0obzdl3z2h1ei.png)

### Porquê?

Mais um dia se passava e eu estava ouvindo alguns podcasts BR de desenvolvimento, e teve um episódio que falava sobre como os blocos "verde" no perfil de usuários do Github estava sendo usado como uma certificação que o desenvolvedor produz algo (não estava parado fazendo nada), um dos integrantes do podcast informou que esse meio de filtro de contratação é meio furada e deu a ideia que podia ser feito um script que preenchesse o quadro verdinho do perfil do github.

    -- Eu fazendo "nada", pensei (...), 
    -- UHHHUMMMMMMMM!, porquê não?

E assim surgiu esse script, meio incompleto, que gera um falso trabalho entre um período determinado pelo usuário.


### Modo de uso

Só funciona em um interpretador shell script

#### Dependências
*   ***git***: é um sistema de controle de versão distribuído de código
*   ***date*** : comando de data
*   ***touch***: comando para criação de arquivos
*   ***cut***: manipulador de string

Acho que é normal o ***date***, ***touch*** e ***cut*** já esteja pré-instalado em distro linux, mas fica a observação

#### Obtendo o repositório

Clonando o **[repositório](https://github.com/dannRocha/lazy)**
```sh
git clone git@github.com:dannRocha/lazy.git
```

Ou você pode copia a raw do script, baixar compactado, você escolhe o meio de obter o script

#### Gerando repositório "falso"

Antes de iniciar o script dê permissão de execução
```sh
chmod +x lazy.sh
```
Agora vamos criar nosso repositório. Na pasta do script, execute o arquivo ***lazy.sh*** o com os seguintes parâmetros.

```sh
./lazy.sh "date from" "date to" "repository name"
```
Exemplo:
```sh
./lazy.sh "09 jun 2019" "07 jun 2020" "lazy-work"   
```
Observe que as datas tem o seguinte padrão "**day** **month** **year**". O dia tem que ser um numero e um dia existente, o mês tem que ser passado por extenso ou com abreviação em inglês, e o ano pode ser passado com apenas os dois últimos dígitos ou completo. O nome do repositório é opcional, caso não seja passado um nome, o repositório é nomeado como "green". Se tiver dúvidas o script possui um **help**

Caso seja passado uma data errada, o script não funcionará corretamente, pois não possui um verificador de parâmetros.

Se você for muito doido, pode deixar o script global no sistema.
```sh
./lazy --install or ./lazy -i
```
Após finalizar a criação do repositório, envie o projeto para o Github e veja um milagre acontecer.
    
    -- "kkkkkkkkkkkkkkkkkkkk"


##### Antes
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/iq0sde66msh2kfnf59rs.png)
##### Depois
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/tgc74si4l2tl3bzxwefs.png)

Passando a opção **-s**, o algoritmo simula os dias que o DEV não codou e faz uns commits a mais em um dia.

```sh
./lazy.sh -s "09 jun 2019" "07 jun 2020" "lazy-work"   
```

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/991fjjnsgrxa4h8ukugx.png)


Espere o Github processar os commits

#### Desfazendo a bagunça
Para remover essa bagunça toda, basta excluir o repositório. Acesse o repositório no Github, clique em **Settings**, vá até o final da página e na seção **Danger Zone** você pode remover o repositório e tudo volta ao normal.