Introdução Git e GitHub — O poder do controle de versões

Fabrício Guilhermo
Apple Developer Academy | Mackenzie
4 min readApr 15, 2020

Imagina você, desenvolvedor, com o seu mais novo e genial projeto, o qual foi iniciado recentemente no sua própria máquina. É fato que você irá incrementar esse projeto com o passar do tempo, ou seja, você irá modificar e avançar no desenvolvimento e irá salvar essas alterações. Assim, muitas vezes você acaba salvando uma versão errada e não consegue recuperar a que estava funcionando. Teria uma solução?

Git

Em um cenário ainda mais caótico, você convidou amigos para ajudá-lo no desenvolvimento dessa ideia genial e vocês estão desenvolvendo em paralelo. Desse modo, toda vez que alguém faz uma alteração, precisa notificar uma das partes por email? Dropbox? …? Uma solução interessante e possível, seria separar um servidor específico para enviar as alterações do arquivo. Todavia, quando alguma outra pessoa for enviar uma versão nova do arquivo o servidor deve saber medir se houve ou não mudanças e avisar se é ou não a mais recente. Caso a versão que esse colega esteja subindo para o servidor não seja a mais recente, ele precisará baixar a que já esta lá, acrescentar o que ele alterou e subir novamente.

Toda a historinha contada acima é o que conhecemos como controle de versões ou versionamento. Isso é o que o Git nos auxilia.

Obs.: o Git não é a única ferramenta para controle de versões, podemos citar outras como Mercurial ou CVS, mas o Git é a mais popular.

O Git permite que você tenha uma cópia do projeto (repositório) na sua máquina e após o término das suas alterações você pode enviar para outro repositório e compartilhar com alguém. Assim, podemos trabalhar offline antes de nos comunicarmos com outro servidor. Esse modelo é conhecido como sistema de repositórios distribuídos.

Outro ponto crucial e de suma importância do Git é o fato dele guardar versões do projeto, você tem acesso a todas as versões anteriores que você mandou para o repositório.

Além disso tudo, podemos ramificar nossos projetos para continuarmos desenvolvendo versões em paralelo e outras funcionalidades…

GitHub

Quando falamos de GitHub estamos falando de uma plataforma que oferece hospedagem de códigos com controle de versão usando o Git. Além disso, encontramos no GitHub toda uma interface gráfica para visualização de códigos, branches, commits, perfis de desenvolvedores, bibliotecas e etc.

Agora, com o poder do Git alinhado a interface do GitHub a equipe, da nossa história contada no início, poderá desenvolver a solução deles com muito mais facilidade e trabalhando paralelamente.

Hands on!

Antes de tudo, precisamos de duas coisas muito importantes, que o Git esteja instalado no seu computador, caso não esteja clique no link abaixo:

Depois disso, precisamos de uma conta no GitHub:

Etapa 1: vamos criar uma pasta no seu computador para deixar seus repositórios armazenados. Abra o seu terminal e digite:

mkdir repo

Etapa 2: avisar que esse é um diretório gerenciado pelo Git. Mude para o diretório que criamos:

cd repo

Agora iniciamos o Git nele:

git init

Etapa 3: agora com o diretório criado, podemos colocar alguma coisa nele, como um código, por exemplo. Nesse exemplo irei criar um arquivo de texto simples, com a palavra teste escrita nele.

echo "Teste" >> README.md

Ainda nessa mesma etapa, iremos adicionar as etapas que sofreram alterações para fazermos nosso commit.

git add .

Etapa 4: agora podemos dar um commit, já que fizemos alterações no arquivo. Sempre que mudamos qualquer coisa no projeto, nós temos uma versão diferente da anterior e para deixar isso registrado, damos um commit com uma mensagem, explicando o commit dado.

git commit -m "Initial commit"

Etapa 5: conectar o nosso repositório Git local com o nosso GitHub, para isso precisamos dar o seguinte comando:

git remote add origin https://github.com/<seu_nome_de_usuario>/repo.git

Etapa 6: finalmente podemos mandar o nosso arquivo para o GitHub.

git push -u origin master

Etapa 6: ver o resultado final e o primeiro passo de uma longa jornada. Ao acessar o link https://github.com/<seu_nome_de_usuario>/repo.git iremos ver o nosso repositório com o arquivo criado.

Deixo abaixo alguns links úteis e caso tenham alguma dúvida ou dica é só entrar em contato!

--

--

Fabrício Guilhermo
Apple Developer Academy | Mackenzie

Cientista da computação, desenvolvedor iOS e apaixonado por novas tendências tecnológicas.