Sistemas de controle de versão podem ser um grande avanço na prevenção para que os desenvolvedores não arrancarem seus cabelos ao tentar analisar as alterações e contribuições feitas para o código compartilhado. Simplificando, um VCS é um componente fundamental do sistema de gerenciamento de configuração de software que atende às necessidades de gerenciamento de mudanças em um projeto. As alterações / revisões / atualizações feitas são identificáveis através de códigos de letra ou números. Informações como time stamps e a identidade do fabricante também é mantida
git checkout — nome_do_arquivo
O comando pode ser executado sem o –, porém, se o nome do arquivo parece com o nome de alguma branch, tag ou alguma identificação de revisão, isto pode confundir o comando. Então é melhor sempre utilizá-lo.
Também um arquivo pode ter suas alterações revertidas para outros pontos como:
git checkout v1.2.3 — nome_do_arquivo
O arquivo é modificado para a versão existente na tag v1.2.3
git checkout stable — nome_do_arquivo
O arquivo é modificado para a versão existente na branch stable
git checkout HEAD — nome_do_arquivo
O arquivo é modificado para a versão existente no mais recente commit
git checkout HEAD^ — nome_do_arquivo
O arquivo é modificado para a versão existente na versão anterior ao mais recente commit