Git:Tour Prático

Antonio Silva - Sep 11 '23 - - Dev Community

Nesse guia, faremos um tour bem prático sobre como usar o Git para versionar nossos projetos.


1. Configurações Básicas

É importante nos identificarmos para o Git, informando nosso nome e e-mail. Em um terminal, execute os comandos a seguir:

git config --global user.name "User_Name"
git config --global user.email "User_email"
Enter fullscreen mode Exit fullscreen mode

2. Criando um arquivo texto para versionarmos

Crie um diretório chamado lista:

$ mkdir lista
Enter fullscreen mode Exit fullscreen mode

Crie um arquivo txt chamado objetos dentro do diretório. Dentro do arquivo, escreva os seguintes conteúdos:

Cadeira
Lapis
Caderno
Enter fullscreen mode Exit fullscreen mode

3. Versionando seu código com Git

Abra um terminal e vá até o diretório lista

$ cd caminho_ate_diretorio/lista
Enter fullscreen mode Exit fullscreen mode

Para transformar o diretório atual em um repositório do Git, basta executar o comando:

$ git init
Enter fullscreen mode Exit fullscreen mode

Pronto, o projeto já é um repositório Git vazio.
Observe que foi criada uma pasta oculta com o nome .git.

4. Rastreando o arquivo

Mas e o arquivo objetos.txt ? Será que já está versionado?
Podemos ver a situação dos arquivos no repositório Git com o comando:

$ git status
Enter fullscreen mode Exit fullscreen mode

A saída deverá ser algo como:

# On branch master
#
# Initial commit
#
# Untracked files:
# (use "git add <file>..." to include in what will be
committed)
#
# objetos.txt
nothing added to commit but untracked files present (use
"git add" to track)
Enter fullscreen mode Exit fullscreen mode

Observe a mensagem anterior: ela indica que o arquivo objetos.txt ainda não foi rastreado pelo Git.
Para que o arquivo seja rastreado, devemos executar o seguinte comando:

$ git add objetos.txt
Enter fullscreen mode Exit fullscreen mode

Agora, se executarmos git status novamente, teremos a seguinte saída:

# On branch master
#
# Initial commit
#
# Changes to be committed:
#   (use "git rm --cached <file>..." to unstage)
#
# new file: objetos.txt
#
Enter fullscreen mode Exit fullscreen mode

5. Gravando o arquivo no repositório

O resultado anterior mostra que o conteúdo do arquivo objetos.txt já está sendo rastreado pelo Git, mas ainda não foi gravado no repositório.
Para gravarmos as mudanças no repositório, devemos executar o comando:

$ git commit -m "Arquivo objetos.txt adicionado a lista"
Enter fullscreen mode Exit fullscreen mode

Observe que foi invocado o comando git commit , com a opção -m para informar a mensagem do commit.

Se executarmos git status novamente, teremos:

# On branch master
nothing to commit, working directory clean
Enter fullscreen mode Exit fullscreen mode

6. Alterando o arquivo

Insira mais uma linha no arquivo objetos.txt , com o conteúdo:

Borracha
Caneta
Enter fullscreen mode Exit fullscreen mode

Depois disso, se executarmos git status novamente, podemos observar que há uma nova mudança para ser rastreada:

# On branch master
# Changes not staged for commit:
#  (use "git add <file>..." to update what will be committed)
#  (use "git checkout -- <file>..." to discard changes in
working directory)
#
# modified: objetos.txt
#
no changes added to commit (use "git add" and/or
"git commit -a")
Enter fullscreen mode Exit fullscreen mode

7. Rastreando e gravando as alterações no repositório

Para rastrearmos a modificação, devemos executar o comando git add novamente:

$ git add objetos.txt
Enter fullscreen mode Exit fullscreen mode

Com a modificação rastreada, podemos gravá-la no repositório, com o comando git commit:

$ git commit -m "Inserindo dois novos objetos a lista"
Enter fullscreen mode Exit fullscreen mode

8. Verificando alterações realizadas

Para verificar o histórico das alterações gravadas no repositório, podemos executar o comando git log:

$ git log
Enter fullscreen mode Exit fullscreen mode

A saída será parecida com:

commit hash do commit
Author: user.name <user.email>
Date: Data de gravação do commit

Inserindo dois novos objetos a lista

commit hash do commit
Author: user.name <user.email>
Date: Data de gravação do commit

Arquivo objetos.txt adicionado a lista
Enter fullscreen mode Exit fullscreen mode

Atenção que a leitura é feita do commit mais novo para o mais velho.
Pronto! Temos um repositório criado com as alterações no arquivo objetos.txt devidamente gravadas. Mas e agora?

9. Compartilhando seu código através do GitHub

Atenção nesse guia usaremos o método de transferência pela chave SSH, aqui você encontra um tutorial sobre.

O primeiro passo é criar uma conta no GitHub. Para projetos de código aberto, não há custo nenhum! Com um navegador, acesse: https://github.com

Preencha seu nome, e-mail e escolha uma senha.

Criando um repositório no GitHub

Agora podemos criar um repositório remoto para isso, clique no botão New Repository.

No Repository name, devemos preencher o nome do repositório remoto.
No nosso caso, vamos preencher com “lista”. Deixe o repositório como Public, para que qualquer pessoa consiga ver o seu código. As demais opções podem ficar com os valores padrão. Finalmente, devemos clicar em Create repository.

Image description

10. Apontando seu projeto para o GitHub

Devemos agora apontar o repositório da nossa máquina para o repositório do GitHub.

Execute o comando git remote , conforme o que segue:

$ git remote add origin git@github.com:user_github/lista.git
Enter fullscreen mode Exit fullscreen mode

Não deixe de alterar user_github para o seu usuário do GitHub.
Com o comando anterior, apontamos o nome origin para o repositório do GitHub.

11. Enviando as alterações para o GitHub

Com o repositório remoto configurado, podemos enviar nossas mudanças para o GitHub. Para isso, basta executar o comando git push , da seguinte forma:

$ git push origin main
Enter fullscreen mode Exit fullscreen mode

Com o comando anterior, enviamos as alterações para o repositório remoto configurado com o nome origin.

Forneça sua senha da chave SSH quando solicitado.

12. Obtendo projeto do GitHub

Com o projeto no GitHub, qualquer um pode acessar o seu projeto público. Se a pessoa tiver cadastrada no GitHub,
será possível baixar o mesmo.

Vamos fazer isso então, crie outro diretório chamado projetos_git e acesse pelo terminal:

$ cd caminho_ate_diretorio/projetos_git
Enter fullscreen mode Exit fullscreen mode

Para obter o código do projeto lá do GitHub, execute o comando git clone conforme o seguinte:

$ git clone git@github.com:user_github/lista.git
Enter fullscreen mode Exit fullscreen mode

Não esqueça de alterar user_github para o seu usuário do GitHub.

Observe no diretório projetos_git que foi criado um subdiretório chamado lista . Dentro desse subdiretório há o arquivo objetos.txt , exatamente com o mesmo conteúdo do GitHub.
Também há um diretório oculto chamado .git , revelando possuimos uma cópia do repositório original.

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .