3
respostas

É possível inserir informações do git nos códigos fonte?

Seria interessante poder inserir informações do git no código fonte tais como data do último commit, hash code, e autor para que isso esteja disponível no software que está em produção. Desta forma poderíamos saber de forma automática em que ponto na árvore de desenvolvimento está o software que está em produção. Isto é possível no git?

3 respostas

Bom dia José, mas se seu código em produção é reflexo da master, basta olha o log da master para saber das alterações ao invés de procurar no fonte, seria isso?

Obrigado Guilherme pela resposta.

Na verdade não há como saber rapidamente qual versão está em produção principalmente se as mudanças tiverem sido feitas apenas no processamento e não na GUI. Exemplo: imagina um programa em c++ que eu distribui para vários clientes ao longo dos anos. Naturalmente cada cliente pode ter versões diferentes em produção. Um cliente então reclama de um bug. Se eu tivesse por exemplo na janela "Sobre" informações como data do commit e a hash code ficaria fácil saber se após aquela versão específica aquele bug já foi resolvido ou se é uma ocorrência nova e que precisa ainda ser resolvida.

Oi José geralmente versões em produção ou release tem tags as quais você pode referenciar em casos de bugs daquela versão em especifico, colocar essa informação no código fonte não parece ser um bom caminho, uma vez que podemos ter toda essa gerência no próprio controle de versão se este estiver bem documentado. Além disso esse mapeamento entre versões e funcionalidades não é gerenciado pelo git e sim por quem utiliza ele. Veja a figura que ilustra o controle por tags:

Lembrando, que se foi identificado algum bug durante o processo, você deve tratar este bug na branch de release, enviar para a master e para a develop também, fazendo que a develop sempre contenha as correções.

Nas hora de inserir a tag, gosto de utilizar tag anotadas, pois ela registra informações de quem fez a tag, data, hash, caso não queira estas informações, simplifique:

$ git tag v1.0.1

Espero ter ajudado e bons estudos.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software