Seu Primeiro Laboratório de Git

GitBeginner
Pratique Agora

Introdução

Boas-vindas à sua primeira jornada emocionante no mundo do Git! Se você já desejou poder voltar no tempo para corrigir um erro em seu trabalho, ou se teve dificuldades para acompanhar as mudanças em seus projetos, você vai adorar isso. O Git funciona como uma máquina do tempo para seus códigos e documentos e, ao final deste laboratório, você terá o poder de controlá-lo!

Não se preocupe se você nunca ouviu falar do Git antes — começaremos do zero e guiaremos você por cada etapa. Ao final deste laboratório, você entenderá como criar um repositório Git, rastrear alterações e fazer "commits" (pontos de salvamento). Estas são as habilidades fundamentais que desenvolvedores em todo o mundo usam diariamente para criar softwares incríveis. Vamos começar nossa aventura!

Este é um Laboratório Guiado, que fornece instruções passo a passo para ajudar você a aprender e praticar. Siga as instruções cuidadosamente para concluir cada etapa e ganhar experiência prática. Dados históricos mostram que este é um laboratório de nível intermediário com uma taxa de conclusão de 79%. Ele recebeu uma taxa de avaliação positiva de 100% dos alunos.

Criando Seu Laboratório Secreto

Antes de mergulharmos no Git, vamos configurar um espaço de trabalho. Pense nisso como a criação de um laboratório secreto onde todos os seus experimentos acontecerão.

Abra seu terminal

Abra seu terminal (não se preocupe, não é tão assustador quanto parece!) e digite estas palavras mágicas:

cd ~/project
mkdir my-time-machine
cd my-time-machine

Aqui está o que cada um desses "feitiços" faz:

  1. cd ~/project: Isso teletransporta você para sua pasta de projetos.
  2. mkdir my-time-machine: Isso cria uma nova pasta chamada "my-time-machine".
  3. cd my-time-machine: Isso move você para dentro do seu novo laboratório secreto.

Parabéns! Você acaba de criar um espaço para seu primeiro projeto Git. Mas por que precisamos dessa pasta especial? Bem, no mundo da programação, manter seu trabalho organizado é crucial. À medida que seus projetos crescem, você apreciará ter um espaço dedicado para cada um deles.

Inicializando Sua Máquina do Tempo (Repositório Git)

Agora que temos nosso laboratório secreto, é hora de construir nossa máquina do tempo! No mundo da programação, chamamos essa máquina do tempo de "repositório Git".

Digite este comando no seu terminal:

git init

Você deverá ver uma mensagem como esta:

Initialized empty Git repository in /home/labex/project/my-time-machine/.git/

Uau! Você acabou de criar sua própria máquina do tempo! Mas por que precisamos de uma máquina do tempo para o nosso código?

Imagine que você está escrevendo uma história. Você pode querer testar finais diferentes ou pode apagar acidentalmente um parágrafo de que gostou muito. Sem o Git, você teria que salvar manualmente diferentes versões da sua história, terminando com arquivos como "historia_final.txt", "historia_final_v2.txt", "historia_final_AGORA_VAI.txt". Parece familiar?

O Git resolve esse problema. Ele permite que você salve diferentes versões do seu trabalho sem criar vários arquivos. Você pode facilmente voltar no tempo para qualquer versão anterior ou criar linhas do tempo alternativas (que chamamos de "branches" ou ramos) para experimentar ideias diferentes. É por isso que os desenvolvedores amam o Git — ele dá a liberdade de experimentar sem o medo de perder o trabalho realizado.

Verificando o Status da Sua Máquina do Tempo

Agora que temos nossa máquina do tempo, vamos ver o que ela pode nos dizer. No Git, fazemos isso com o comando git status. É como perguntar à sua máquina do tempo: "O que está acontecendo agora?"

Experimente:

git status

Você deverá ver algo assim:

On branch master

No commits yet

nothing to commit (create/copy files and use "git add" to track)

Isso pode parecer um pouco confuso, mas vamos analisar por partes:

  • "On branch master": Pense em um "branch" como uma linha do tempo. "master" é a linha do tempo principal do seu projeto.
  • "No commits yet": Um "commit" é como um ponto de salvamento em um videogame. Ainda não criamos nenhum ponto de salvamento.
  • "nothing to commit": Não há alterações para o Git registrar porque ainda não criamos nenhum arquivo.

Você pode estar se perguntando: "Por que precisamos de tudo isso apenas para salvar arquivos?". Ótima pergunta! Diferente de um salvamento comum, o Git permite salvar múltiplas versões do seu projeto ao longo do tempo. Isso significa que você pode experimentar livremente, sabendo que sempre pode voltar a uma versão anterior se algo der errado. É como ter um "desfazer" ilimitado para todo o seu projeto!

Criando Seu Primeiro Arquivo

Agora, vamos criar algo para nossa máquina do tempo rastrear. Começaremos com uma mensagem simples em um arquivo:

echo "Hello, Future Me" > message.txt

Este comando cria um novo arquivo chamado message.txt com o texto "Hello, Future Me" dentro dele.

Vamos conferir o que escrevemos:

cat message.txt

Você deverá ver:

Hello, Future Me

Excelente! Criamos nosso primeiro arquivo. Mas aqui é onde a mágica do Git entra em cena. No momento, este arquivo existe no seu computador, mas o Git ainda não o está rastreando. É como se tivéssemos escrito um bilhete, mas ainda não o colocamos em nossa cápsula do tempo (o repositório Git).

Nos próximos passos, veremos como o Git reage a este novo arquivo e como podemos começar a rastrear as mudanças nele. É aqui que o Git começa a brilhar em comparação ao salvamento normal de arquivos. Com o Git, você poderá ver exatamente o que mudou, quando mudou e por que mudou. Imagine o quão útil isso é ao trabalhar em um grande projeto!

Verificando o Status Novamente

Agora que criamos um arquivo, vamos perguntar à nossa máquina do tempo o que ela vê. Execute o comando git status novamente:

git status

Desta vez, você verá algo diferente:

On branch master

No commits yet

Untracked files:
  (use "git add <file>..." to include in what will be committed)
        message.txt

nothing added to commit but untracked files present (use "git add" to track)

Emocionante! O Git notou nosso novo arquivo, mas está nos dizendo que ele é "untracked" (não rastreado). Esta é uma das características legais do Git — ele não rastreia automaticamente todos os arquivos na sua pasta. Isso dá a você controle total sobre quais alterações deseja incluir no histórico do seu projeto.

Você pode pensar: "Por que não rastrear tudo automaticamente?". Bem, imagine que você está trabalhando em um projeto grande. Você pode ter alguns arquivos que não deseja rastrear — como anotações pessoais ou arquivos temporários. O Git permite que você escolha o que é importante, mantendo o histórico do seu projeto limpo e organizado.

No próximo passo, diremos ao Git que queremos rastrear este arquivo. É aqui que o Git começa a parecer um superpoder — você está prestes a criar seu primeiro ponto de salvamento no tempo!

Preparando Seu Primeiro Ponto de Salvamento

Agora, vamos dizer ao Git que queremos incluir o message.txt no nosso próximo ponto de salvamento (ou "commit", em termos de Git). Fazemos isso com o comando git add:

git add message.txt

Este comando não produz nenhuma saída visual, mas informou ao Git para começar a rastrear o message.txt.

Vamos verificar o status novamente para ver o que mudou:

git status

Agora você deve ver:

On branch master

No commits yet

Changes to be committed:
  (use "git rm --cached <file>..." to unstage)
        new file:   message.txt

Veja só! O Git agora está rastreando nosso arquivo e ele está pronto para ser "commitado". Esse processo de duas etapas — adicionar e depois commitar — pode parecer um pouco complexo no início, mas é, na verdade, um dos grandes trunfos do Git.

Imagine que você está preparando uma cápsula do tempo. O comando git add é como decidir o que você quer colocar dentro da cápsula, e o commit (que faremos a seguir) é como selar a cápsula de fato. Isso permite que você escolha cuidadosamente o que entra em cada ponto de salvamento da história do seu projeto.

Este recurso é incrivelmente útil em projetos maiores. Você pode alterar dez arquivos, mas querer commitar as mudanças de apenas três deles. A área de preparação do Git (onde o message.txt está agora) permite que você faça exatamente isso!

Criando Seu Primeiro Ponto de Salvamento (Commit)

Agora vem a parte emocionante — vamos criar nosso primeiro commit! Um commit é como selar uma cápsula do tempo. Ele salva o estado atual de todos os arquivos rastreados e adiciona uma mensagem descrevendo o que mudou.

Aqui está o comando para criar um commit:

git commit -m "Send a message to the future"

Você verá uma saída semelhante a esta:

[master (root-commit) a1b2c3d] Send a message to the future
 1 file changed, 1 insertion(+)
 create mode 100644 message.txt

Parabéns! Você acaba de criar seu primeiro commit no Git. Você salvou oficialmente um ponto no tempo em seu projeto ao qual poderá sempre retornar.

É por isso que o Git é tão poderoso. Cada commit é uma "fotografia" de todo o seu projeto naquele exato momento. Você pode criar quantas dessas fotos quiser, gerando um histórico detalhado do seu trabalho.

Imagine que você está escrevendo uma redação escolar. Com o salvamento comum, você tem apenas a versão mais recente. Mas com o Git, você poderia ter pontos de salvamento para "Primeiro rascunho", "Conclusão adicionada", "Introdução corrigida" e assim por diante. Você pode até voltar a qualquer um desses pontos se precisar!

Visualizando Seu Log de Viagem no Tempo

Agora que fizemos nosso primeiro commit, vamos ver o histórico do nosso projeto. Podemos fazer isso com o comando git log:

git log

Você deverá ver algo assim:

commit a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6q7r8s9 (HEAD -> master)
Author: Your Name <your.email@example.com>
Date:   Mon Aug 7 10:00:00 2023 +0000

    Send a message to the future

Esta entrada de log nos mostra várias informações:

  • Um identificador único para o commit (aquela longa sequência de letras e números)
  • Quem fez o commit
  • Quando o commit foi feito
  • A mensagem de commit que escrevemos

Este log é como a linha do tempo do seu projeto. À medida que você faz mais commits, eles serão adicionados a este log, criando um histórico completo. Isso é incrivelmente útil quando você tenta entender como seu projeto evoluiu ao longo do tempo ou quando precisa descobrir quando uma mudança específica foi feita.

Pressione q para sair do log e voltar à linha de comando. Lembre-se: você sempre pode pressionar q para sair de qualquer visualização de tela cheia no Git.

Imagine que você está colaborando em um projeto de grupo. Com o Git, você pode ver quem fez cada alteração e por quê, tornando muito mais fácil a coordenação com sua equipe. Esta é uma das razões pelas quais o Git é usado por desenvolvedores em todo o mundo — ele facilita muito a colaboração!

Resumo

Parabéns, viajante do tempo! Você acaba de concluir sua primeira aventura com o Git. Vamos recapitular as coisas incríveis que você aprendeu:

  1. Como criar um repositório Git (sua máquina do tempo) usando git init
  2. Como verificar o status do seu repositório com git status
  3. Como criar arquivos e prepará-los para o commit usando git add
  4. Como criar um commit (um ponto de salvamento no tempo) com git commit
  5. Como visualizar o histórico do seu projeto usando git log

Você pode estar se perguntando: "Por que ter todo esse trabalho apenas para salvar arquivos?". Ótima pergunta! Aqui está o porquê do Git ser tão poderoso:

  1. Histórico Detalhado: Com o Git, você tem um histórico completo do seu projeto. Você pode ver o que mudou, quando mudou e por quê.
  2. Experimentação: O Git permite que você experimente livremente. Você pode criar diferentes versões do seu projeto sem medo de perder seu trabalho original.
  3. Colaboração: Ao trabalhar em equipe, o Git facilita ver quem fez quais alterações e o motivo.
  4. Backup: Cada repositório Git é um backup completo do seu projeto, incluindo todo o seu histórico.

Estes são os blocos de construção fundamentais que os desenvolvedores usam todos os dias para criar softwares fantásticos. À medida que você continua sua jornada, você usará esses conceitos básicos para gerenciar projetos mais complexos e colaborar com outras pessoas.

Lembre-se, todo mundo começa como iniciante. Mesmo os desenvolvedores mais experientes já estiveram onde você está agora. Continue praticando, continue experimentando e, o mais importante, divirta-se!

Se você quiser saber mais sobre o LabEx e como usá-lo, visite nossa Central de Suporte. Ou você pode assistir ao vídeo para aprender mais sobre a plataforma.

Sua jornada no mundo da programação e do controle de versão está apenas começando. O Próximo Laboratório está a apenas um clique de distância. Vamos continuar explorando e expandindo suas habilidades! Quem sabe quais projetos incríveis você criará com seus novos superpoderes de Git?