Eu li várias perguntas sobre ferramentas simples de controle de código-fonte e o Git parecia uma escolha razoável. Eu o tenho instalado e funcionando, e funciona bem até agora. Um aspecto que eu gosto no CVS é o incremento automático de um número de versão.
Entendo que isso faz menos sentido em um repositório distribuído, mas como desenvolvedor, quero / preciso de algo assim. Deixe-me explicar o porquê:
Eu uso o Emacs. Periodicamente, procuro novas versões dos arquivos de origem Lisp para pacotes de terceiros. Digamos que eu tenho um arquivo, foo.el, que, de acordo com o cabeçalho, é a versão 1.3; se eu procurar a versão mais recente e ver a versão 1.143 ou 2.6 ou o que for, sei que estou muito atrasada.
Se, em vez disso, eu vejo alguns hashes de 40 caracteres, não saberei o que é mais tarde nem faço ideia de quanto é mais tarde. Eu absolutamente odiaria se tivesse que verificar manualmente os ChangeLogs apenas para ter uma idéia de como estou desatualizado.
Como desenvolvedor, quero estender essa cortesia, a meu ver, às pessoas que usam minha saída (e talvez eu esteja brincando que alguém seja, mas vamos deixar isso de lado por um momento). Eu não quero ter que lembrar de incrementar o número maldito sempre, ou um carimbo de data / hora ou algo assim. Essa é uma verdadeira PITA, e eu sei disso por experiência própria.
Então, quais alternativas eu tenho? Se eu não conseguir um equivalente $ Id: $, de que outra forma posso fornecer o que estou procurando?
Devo mencionar que minha expectativa é que o usuário final NÃO tenha o Git instalado e, mesmo que o tenha, não terá um repositório local (de fato, espero não disponibilizá-lo dessa maneira).
filter-branch
ou algo assim.