Você já se deparou com a situação de mexer em um código em que você não é o único desenvolvedor? E um código com milhões e milhões de linhas de código? E trabalhar com pessoas que estão em outras partes do mundo?
Esses tipos de problemas são solucionados através de uma simples e importante técnica, o versionamento de projetos.
A definição de controle de versão é simplesmente o controle de alterações de arquivos de projetos, com o intuito de manter um histórico de tudo que foi criado e alterado desde o momento em que o código foi criado.
O controle de versão pode evitar diversos problemas, como por exemplo, que arquivos ou documentos sejam alterados por duas pessoas em paralelo e um sobrescreva a alteração anterior, também evita que se percam arquivos funcionais que foram alterados e apresentaram problemas e etc.
Ter um controle de versões eficiente ainda ajuda a manter a qualidade do produto final, ajudando a manter todos os clientes com a mesma versão do produto, ou caso seja necessário versões diferentes do mesmo produto caso algum dos clientes tenha necessidades especiais.
Para a gestão do projeto, além de permitir que várias pessoas trabalhem paralelamente em um projeto, ainda permite que se trabalhe em um projeto em versões diferentes, como por exemplo, parte da equipe finalizando a versão 1.0 enquanto outra parte já trabalha na versão 2.0.
Diversas empresas tais como Google, Facebook, Twitter utilizam o controle de versão de projeto.
Ao começar um novo projeto pessoal ou na sua empresa, versione seu código!