O que é o Git e a Máquina do Tempo do seu Código — aula do módulo Git & GitHub na Prática, na trilha Setup Essencial & Terminal Descomplicado da formação…
Leitura de aproximadamente 5 minutos.
Módulo: Git & GitHub na Prática · Curso: Setup Essencial & Terminal Descomplicado · Formação: Formação Nível Zero: Ferramentas Essenciais e Gratuitas de IA e Código
Se você já trabalhou em documentos importantes, planilhas financeiras ou contratos, certamente já viu ou produziu uma pasta com nomes como:
Relatorio_Final.docxRelatorio_Final_Revisado.docxRelatorio_Final_v2_agora_vai.docxRelatorio_Final_v3_versao_do_chefe_FINAL.docxEssa abordagem manual cria confusão imediata: ninguém sabe ao certo o que mudou de uma versão para outra, quem fez a alteração, quando ela ocorreu ou como recuperar um parágrafo que foi excluído por engano há três dias.
Na programação e no desenvolvimento assistido por Inteligência Artificial, esse caos é completamente resolvido por um Sistema de Controle de Versão (conhecido pela sigla VCS, do inglês Version Control System), do qual o Git é o padrão absoluto em todo o planeta.
O Git funciona como uma verdadeira "máquina do tempo". Ele monitora cada arquivo e cada linha do seu projeto. Sempre que você atinge um ponto de progresso satisfatório, você registra uma "fotografia" daquele momento (chamada de Commit), acompanhada de uma mensagem clara que explica o que foi feito.
+-------------------------------------------------------------------------------+
| O CAOS MANUAL vs A LINHA DO TEMPO DO GIT |
+-------------------------------------------------------------------------------+
| |
| Método Caótico Manual: |
| [Pasta_v1] ──> [Pasta_v2_copia] ──> [Pasta_final] ──> [Pasta_final_FINAL] |
| (Espaço desperdiçado, sem rastreabilidade de quem mudou o quê) |
| |
| Método Git (Linha do Tempo Estruturada em uma Única Pasta): |
| [Commit A: Estrutura inicial] |
| │ |
| ▼ |
| [Commit B: Adiciona formulário de contato] |
| │ |
| ▼ |
| [Commit C: Integração com API de pagamentos] <── (Ponto Atual) |
| |
| * É possível voltar para o estado A ou B a qualquer momento em 1 segundo. |
| |
+-------------------------------------------------------------------------------+
Uma confusão muito comum entre profissionais iniciantes é tratar "Git" e "GitHub" como se fossem a mesma coisa. Eles são complementares, mas totalmente distintos:
+-------------------------------------------------------------------------------+
| RELAÇÃO ENTRE GIT E GITHUB |
+-------------------------------------------------------------------------------+
| |
| SEU COMPUTADOR (Local) NUVEM (Remoto) |
| +-----------------------+ +-----------------------+ |
| | GIT | ── push ──> | GITHUB | |
| | (Grava commits no HD, | <── pull ── | (Backup online, | |
| | funciona offline) | | trabalho em equipe) | |
| +-----------------------+ +-----------------------+ |
| |
+-------------------------------------------------------------------------------+
Diferente de sistemas antigos que guardavam apenas uma lista de diferenças entre arquivos, o Git trabalha com Snapshots (instantâneos).
Imagine que você está construindo uma página web. Você tem três arquivos: index.html, estilo.css e app.js. Quando você cria um commit, o Git fotografa o estado exato dos três arquivos juntos. Se no próximo commit você alterar apenas uma linha do estilo.css, o Git registra a nova versão do CSS e mantém uma referência inteligente para os outros dois arquivos que não mudaram, economizando espaço e garantindo máxima velocidade de recuperação.
Antes de criar seu primeiro commit, o Git exige que você informe seu nome e e-mail. Essas informações não são senhas de acesso; elas servem como a assinatura de autoria que será anexada a cada commit realizado no seu computador.
Abra o seu terminal Git Bash e execute os dois comandos abaixo (substituindo pelo seu nome e pelo e-mail que você utiliza ou planeja utilizar no GitHub):
git config --global user.name "Juliano Ceconi"
git config --global user.email "seu-email@exemplo.com"
[!IMPORTANT]
Achar que fazer commit envia o código para a internet: O comandogit commitgrava a alteração apenas no seu computador local. O código só é transmitido para a nuvem quando você executa explicitamente o comando de envio (git push). Se o seu computador quebrar antes do push, os commits locais não estarão protegidos no GitHub.
Outro ponto importante: use sempre o mesmo e-mail configurado no Git para criar sua conta no GitHub. Isso garante que suas contribuições e histórico de trabalho fiquem vinculados ao seu perfil público.
Configure sua identidade no Git e inspecione as configurações gravadas no seu sistema:
1. Defina seu nome de autor:
git config --global user.name "Seu Nome Completo"
2. Defina seu e-mail de autor:
git config --global user.email "seu.email@exemplo.com"
3. Configure o nome padrão da branch principal para main:
git config --global init.defaultBranch main
4. Inspecione a lista completa de configurações ativas:
git config --list
(Verifique se as linhas user.name, user.email e init.defaultBranch=main aparecem na listagem exibida).