Determinar a saúde dos branches do git

Em minha função atual, normalmente usamos um branch git para cada problema em que estamos trabalhando. Isso significa que normalmente temos muitos galhos espalhados pelo controle remoto de nossa origem. Quando perguntei a alguns dos outros desenvolvedores quando eles decidiram podar esses ramos, a resposta típica foi “Algumas semanas depois de empurrar a alteração para master, mas sempre que eu tiver tempo para isso.”

Dado que há muitos branches em nosso controle remoto de origem, pensei: “Cara, não seria bom ver quais branches estão disponíveis e a hora em que foram gravados pela última vez, tudo em uma grande lista?”

Outra dica profissional sobre este problema, por @filipekiss , olha exatamente para este problema. <sup> 1 </sup>

Mas, seria ainda melhor se eu pudesse dizer quando considero um branch como “íntegro” (ou seja, modificado pela última vez em X dias) e exibir apenas os que não estão íntegros.

Então, reescrevi o script bash original em python. Ele está disponível aqui:
https://github.com/jwir3/proton-pack/tree/master/python

A instalação é fácil:

$ sudo python setup.py install

E usar o script é ainda mais fácil. Simplesmente dê a ele o número de dias que você deseja que um branch seja considerado ‘saudável’, com o parâmetro ‘-d’, e use ‘–bad-only’ se você quiser que ele exiba apenas branches que ele considera ‘antigos ‘(o tempo da última modificação é maior que 2 * <número de dias que um branch é considerado’ íntegro ‘>):

$ cd <my-git-repo>
$ git
-branchhealth -d 14 --bad-only .

Cenário

Ele até os encomenda para você – os ramos no topo são os mais antigos. Se você quiser ver todos os seus branches, não use a opção ‘–bad-only’.

É um pouco difícil agora, mas o script ficará melhor com o tempo. E, claro, os patches são aceitos. 😉