Aprendendo a usar o Git

Todo desenvolvimento começa pequeno, e gerenciável através de change-logs e comentários no próprio fonte.

Mas em pouquíssimo tempo a coisa começa a complicar. Principalmente quando aquela “pequena melhoria” no código não funciona e ao tentar voltar à situação anterior começam a aparecer problemas e o desespero bate a sua porta.

O que ajuda a resolver esse problema é um Sistema de Controle de Versões.

As principais características de um sistema de controle de versões:

  • Guardar o histórico das alterações de arquivos
  • Resgatar versões antigas de arquivos
  • Possibilitar o trabalho em equipe
  • Criação de ramos (brenchs) de desenvolvimento independentes

Um dos sistemas de controle de versões mais usados atualmente é o Git, escrito por Linus Torvalds em 2005 para manter o kernel do Linux.

Sem mais delongas, vamos ao passo-a-passo.

Nesse tutorial usei a instalação de um Ubuntu no Virtual box e o Github como repositório.

Lembrando que existem diversos outros serviços semelhantes ao Github. Um deles é o Bitbucket que permite hospedagem privada sem custo.

Nesse link você encontra diversos outros serviços de hospedagem git.

O nosso escolhido foi o Github por ser o mais popular entre eles.

A primeira coisa é criar uma conta no Github, que pode ser o plano gratuito. A diferença básica é que esse plano não permite hospedagem de repositórios privados. Então deve-se ter cuidado com que se coloca por lá, pois qualquer um pode ter acesso. Assim, os fontes de um produto que você não quer tornar público não devem ser hospedados em repositórios públicos. Para esses casos escolha um plano pago, ou escolha outro repositório que ofereça hospedagem de repositórios privados em planos gratuitos. A outra opção, é você criar o seu próprio servidor git, mas isso tratarei em outro post assim que conseguir montar um.

1 – Criar um repositório no Github

No site do Github selecione o botão “Create new repo” que fica ao lado do seu Avatar.

01-Git-CriarRepo

A seguir digite o nome do novo repositório e clique em Create a Repository

02-Git-CreateARepo2

O seu repositório está criado.

Observe que é recomendado criar três arquivos:

  • README – Resumo sobre o projeto
  • LICENSE – Qual a licença você está usando para o projeto
  • .gitignore – Indica quais arquivos que estão no diretório do projeto que não devem ser carregados no repositório. Normalmente são listados os arquivos temporários, executáveis e principalmente arquivos de chave SSH.

A seguir um exemplo de um arquivo .gitignore:

2 – Preparar o diretório local

Caso você não tenha o git instalado na sua máquina. Instale-o:

Vá para o seu diretório do projeto para configurar o seu repositório

Resultado dos comandos:

04-GitInitAo digitar git status, é avisado que existem arquivos no diretório que ainda não foram adicionados. No caso de existirem subdiretórios também são sugeridos que sejam adicionados.

3 – Adicionar arquivos e fazer o primeiro commit.

Antes de passar aos comandos, uma coisa que deve-se ter em mente é a estrutura de armazenamento do git.

Esse post do stackoverflow explica muito bem o seu funcionamento.

Nesse momento serão adicionados todos os arquivos do diretório ao staging area. Logo em seguida será executado o primeiro commit, que é uma forma de confirmar a inclusão dos arquivos no repositório local.

Seguindo a orientação do git, atualizo o nome e email

05-GitCommit

4 – “Tentar” enviar arquivos para repositório remoto

Uma vez os arquivos confirmados e gravados no diretório local, vamos enviá-los para o Github.

Houve um erro na execução do último comando

06-GitPush1Isso aconteceu porque não geramos a chave SSH para acessar o Github.

5 – Gerando a chave SSH

07-GitSSH-Keygen

Com a chave gerada, devemos copiar o conteúdo da chave para registrar no Github

Selecione e copie todo o conteúdo do arquivo id_rsa_pub

08-GitCopySSHKey

Agora, devemos voltar ao site do Github e incluir a chave gerada.

Clique em ferramentas (segundo ícone ao lado do seu avatar), clique em “SSH Keys” no meu a esquerda, “Add SSH Key”, e cole o conteúdo copiado no campo “Key”. Feito isso dê um nome para a chave e clique em “Add Key”.

09a-CreateSSHKey

Será solicitada a confirmação da senha e pronto! Sua chave já está registrada no Github.

09b-GitCreateSSHKey

6 – Enviar arquivos para repositório remoto

Uma vez que o Github já possui sua chave SSH, será possível enviar os arquivos para seu repositório remoto.

10-GitFirstPush 7 – Incluir novo arquivo nos repositórios

No decorrer de um projeto alguns arquivos são alterados e outros são incluídos. O próximo passo é incluir um arquivo nos repositórios (staging area), diretório local e remoto.

Resultado:

11-GitUpdatingRepoPara verificar as transferências para o repositório remoto:

Selecione o botão “Commits” na página do seu repositório

12-GitCommits1

Lá estarão os commits realizados

13-GitCommits2

8 – Removendo arquivos do repositório

Da mesma forma que é possível incluir novos arquivos, pode-se querer remover arquivos dos repositórios locais e remotos.

Apenas apagar o arquivo do diretório de trabalho não removerá dos demais repositórios.

É necessário usar o comando git rm conforme abaixo:

14-GitRemovingFiles

9 – Conclusão

Essa foi apenas uma introdução à utilização dessa poderosa ferramenta de controle de versões.

Em breve publicarei os seguintes tutoriais

  • Trabalhando em equipe com o Git
  • Trabalhando com branchs
  • Instalando um servidor Git

10 – Referências

Uma boa referência de consulta on-line para trabalhar com o git:

1 Comentário


  1. Parabéns Ricardo! Excelente Tutorial. Estou aguardando os próximos capítulos!

    Responder

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *