Como você controla a contagem de compilação da sua biblioteca quando há vários autores usando o controle de versão?

Não sei se isso é algo comum para as pessoas fazerem ou não, mas pessoalmente sempre acompanho o número de vezes que construí meu código. Ou seja, o número de vezes que liguei paramake e o número de vezes que a compilação foi bem-sucedid

Minha solução atual

Eu tenho um código simples que usa um arquivo como parâmetro, o abre, incrementa o número interno e o substitui. Este código é compilado, logo quandomake é chamado

Imediatamente depois,./increase_build build.txt é chamado, o que aumenta o número de vezes que eu chameimake para construir a biblioteca.

Em seguida, o código é compilado e o arquivo lib é criado (comar cq ...). Depois disso,./increase_build libbuild.txt é chamado que aumenta o número de compilações bem-sucedidas. Finalmente, os testes são construído

Est é um exemplo de um dos meus Makefile

Por que me preocupei

Isso sempre funcionou bem, até que comecei a usar o controle de versão. Parecia que não havia problema: sou o único autor de minhas próprias bibliotecas e adiciono recursos um por u

Um dia, porém, eu estava testando ramificações e mesclagens (eu uso o git para mim e o svn no trabalho), então eu adicionei um recurso em uma ramificação e mudei algo no master e juntei as duas. Agora, os arquivos de contagem de compilação têm valores diferentes.

O problem

O problema é, digamos, no momento da ramificação, a contagem de compilação é 100. Então escrevo algo na ramificação e a contagem de compilação chega a 110. Eu escrevo algo na ramificação principal e a contagem de compilação chega a 120. Quando eu mesclar os dois, vejo que um é 110 e um é 120 (a propósito, é um conflito). A solução correta seria definir a compilação para 130.

No entanto, eu não posso (leia, não quero) voltar ao commit, onde o ramo decolou e descobrir que eram 100, então eu computo 100+ (110-100) + (120-100) = 130 ! Eu quero que isso seja automático

A questã

Bem, a pergunta é óbvia: como faço isso? Como acompanho minha contagem de compilação (e não a contagem de confirmação!) Quando trabalho com controle de versão? Não quero uma resposta baseada em um recurso no controle de versão, porque o problema surge novamente se eu alterar o sistema de controle de versã

O que eu pensei que poderia funcionar era adicionar uma linha no arquivo de contagem de compilação para cada compilação, algo a dizer com dados e tempo. Em seguida, o número da compilação seria o número de linhas nos arquivos de contagem de compilação. Além disso, a menos que eu receba duas compilações em duas ramificações que foram feitas exatamente no mesmo período, a mesclagem dos arquivos seria apenas a união das dua

Eu me pergunto, existem soluções melhores para isso? O que eu quero (contagem de compilação) vale o esforço?

P.S. Se você está se perguntando por que faço isso com o número de compilações e o número de compilações bem-sucedidas, isso é apenas algo pessoal. Gosto de ver o quanto de reconstrução recebo por pequenos erros de digitação e erros cometidos quando codifico.

Editaromo eu programa em C e C ++, uma solução funciona para mi

questionAnswers(4)

yourAnswerToTheQuestion