Introdução ao versionamento de software com Git e Github

Olá, para iniciar este post deixo a dica de uma banda legal que estou ouvindo durante a escrita desse post e pode ser encontrada no Spotify.

Kansas.

Sempre quando alguém começa a "escrever" código, seja algorítmos em C na faculdade, pequenos projetos html/css estáticos ou aplicativos maiores é normal que não sejam versionados.

Mas o que é versionar e por qual motivo preciso versionar ?

O devmedia neste link exibe a seguinte opinião sobre o versionamento:

"Sistemas de controle de versões são ferramentas de apoio aos desenvolvedores cuja principal função é controlar as modificações realizadas em um arquivo de projeto. Ainda possuem um mecanismo automatizado para identificar e controlar as modificações realizadas nos arquivos de um projeto ao longo do tempo, garantindo integridade e rastreabilidade das modificações. O controle de versões é visto como uma extensão natural do processo de desenvolvimento, permitindo que se possam realizar modificações paralelas e de forma coerente e padronizada, especialmente se tratando de equipes geograficamente dispersas. "

Seguindo este conceito, vamos supor que temos um projeto com 3 contribuintes ou desenvolvedores:

  • João — Desenvolvedor Java Australiano.
  • Filipe — Desenvolvedor Front-End Brasileiro.
  • Maria — Desenvolvedora Javascript da Inglaterra.

Seria praticamente impossível manter o fluxo de entrega de funcionalidades sem um controle de versão.

Como Maria poderia testar suas implementações em Javascript utilizando o Back-end desenvolvido por João e como Filipe traria os dados tratados pelas implementações dos outros dois desenvolvedores para exibir aos usuários ?

Através de um projeto no qual o código esteja versionado, facilmente cada um dos três desenvolvedores poderiam baixar o código fonte publicado pelos outros dois e trabalhar normalmente em suas atividades, sabendo que a sincronia poderá ser feita facilmente baseando-se uma ferramenta que traz segurança e conforto aos membros do projeto.

Git

O git foi criado por volta de 2005 por ninguém menos que Linus Torvalds, criador do Linux, núcleo do GNU/Linux e tem como uma de suas maiores vantagens a facilidade de criação e manuseio de ramificações (Branch) do projeto. O conceito de Branch pode ser tratado em uma publicação futura, devido aos detalhes e importância dentro dos conceitos do Git.

Github

Depois dessa descrição, fica até difícil procurar algo mais a dizer. :D

Concluindo…

Quem quiser iniciar, pode ver este link explicando a instalação do Git,. Crie sua conta no Github e veja um pouco mais desses conceitos de branch. Pode iniciar com uma coisa pequena, um arquivo Readme.md para exemplificação do projeto e alguns arquivos css, html, javascript ou de qualquer linguagem que lhe agrade, o importante é começar no mundo Open Source.

Referências

Drink some coffee, write some code and be happy.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store