Acompanhando a aula de um curso on-line, o professor abordou o tema de versionamento de código.
Além de apresentar a principal ferramenta da área, o Git, ele citou soluções antigas de controle de versão e técnicas utilizadas quando nenhuma solução específica para esse fim estava disponível.
Foi nesse ponto que me lembrei de uma história do fundo do baú sobre "controle de versão". De uma época em que eu nem sabia da existência de "controle de versão".
A história data de antes de eu ter meu primeiro HD.
Sim, houve uma breve época em que tudo o que tudo que tínhamos eram disquetes.
E eramos muito feliz com os disquetes!
Afinal, antes disso, eram fitas cassete ou outros tipos de fitas, magnéticas ou perfuradas.
Ou então, quem tinha acesso a um "computador" (não um "microcomputador"), talvez já tivesse passado pela interessante experiência de utilizar cartões perfurados, cada um representando uma linha de código do seu programa.
Opa!
Desculpem-me ter entrado nesse momento "revival".
Voltemos aos "modernos" disquetes.
O disquete era a principal memória de armazenamento dos micros.
Trabalhávamos, meu saudoso amigo Flávio e eu, com dois projetos em um disquete.
Quanto achávamos importante manter histórico de algum arquivo dos projetos, simplesmente salvávamos uma cópia com outro nome. Isso não era um "controle de versão", era apenas um "cuidado".
Mas, pensamos: E se o disquete "morrer"?
Então, tivemos a "grande" ideia de utilizar dois disquetes ao invés de um.
Assim teríamos "sempre" as últimas duas versões completas dos projetos.
Acabava de nascer nosso primeiro "controle de versão".