📦 Capítulo 03: Inicializando um Repositório e Configuração Inicial (git init, git config)
🎯 Objetivos da Aula
Ao final desta aula, você será capaz de:
- Configurar sua identidade de autor (
user.nameeuser.email) no Git. - Transformar qualquer pasta comum em um repositório Git rastreável através do
git init. - Compreender a função da pasta oculta
.gite como o Git armazena o histórico do projeto. - Inspecionar o estado atual do repositório utilizando o comando
git status.
🧠 1. Configuração Global de Identidade (git config)
Antes de registrar seu primeiro salvamento (commit), o Git exige que você defina a identidade do autor das alterações. Esses dados ficam gravados em cada commit realizado.
flowchart TD A[💻 Instalação do Git no Sistema] --> B["git config --global user.name 'Seu Nome'"] B --> C["git config --global user.email 'seu@email.com'"] C --> D["git config --global init.defaultBranch main"] D --> E[✅ Git Pronto para Inicializar Repositórios]
Comandos de Configuração no Terminal:
# Configura o nome do autor para todos os projetos da máquina
$ git config --global user.name "Seu Nome Profissional"
# Configura o e-mail do autor (deve ser o mesmo cadastrado no GitHub)
$ git config --global user.email "seu.email@dominio.com"
# Define 'main' como nome padrão para novas ramificações
$ git config --global init.defaultBranch main
# Listar todas as configurações ativas
$ git config --list📦 2. Inicializando o Repositório (git init)
O comando git init avisa ao Git para começar a monitorar a pasta atual. Ele cria automaticamente um diretório oculto chamado .git.
# Criar uma pasta para o projeto
$ mkdir sistema_alunos_v2
$ cd sistema_alunos_v2
# Inicializar o repositório Git
$ git init
Initialized empty Git repository in /home/dev/projetos/sistema_alunos_v2/.git/O que existe dentro da pasta .git?
HEAD: Ponteiro indicando em qual ramificação (branch) você está posicionado.config: Configurações locais exclusivas deste repositório.objects/: Banco de dados interno onde todos os arquivos e commits são salvos em formato comprimido.
💻 3. Prática Guiada: Inspecionando o Estado (git status)
O comando git status é a bússola do desenvolvedor. Ele indica se há arquivos alterados, novos arquivos não rastreados ou commits pendentes.
# Inspecionar o estado inicial do repositório
$ git status
On branch main
No commits yet
nothing to commit (create/copy files and use "git add" to track)⚔️ 4. Desafios Práticos (Exercícios 30/50/20)
🥉 Nível Bronze (Fixação)
- Para que serve o comando
git config --global user.name? - O que acontece com o histórico de commits do projeto se você apagar a pasta oculta
.gitdo seu diretório?
🥈 Nível Prata (Aplicação)
- Escreva a sequência de comandos de terminal necessária para:
a) Configurar seu e-mail global no Git.
b) Criar uma pasta chamadameu_primeiro_repo.
c) Entrar na pasta e inicializar o Git.
d) Exibir o status do repositório recém-criado.
🥇 Nível Ouro (Desafio)
- Inicialize o repositório Git dentro da pasta do projeto C desenvolvido na Fase 01, crie o arquivo
.gitignoreomitindo os binários executáveis (*.exe,*.out,*.o) e verifique ogit status.
💡 Gabaritos Sanfonados de Resposta
💡 Ver Gabarito do Nível Bronze
- Configura o nome do autor que será gravado nos metadados de todos os commits futuros na máquina.
- Todo o histórico de versões, commits, branches e tags será permanentemente apagado, e a pasta voltará a ser um diretório comum do sistema operacional sem rastreamento.
💡 Ver Gabarito do Nível Prata (Sequência de Comandos)
$ git config --global user.email "dev@empresa.com"
$ mkdir meu_primeiro_repo
$ cd meu_primeiro_repo
$ git init
$ git status📚 Referências Teóricas Oficiais
- CHACON, Scott; STRAUB, Ben. Pro Git. 2ª Edição. Apress, 2014. Cap. 1 & 2 (Getting Started & Git Basics).
- Git Official Documentation. git-init Manual Page (https://git-scm.com/docs/git-init).
⬅️ Capítulo Anterior (Manipulação de Pastas) | Voltar ao Sumário | Próximo Capítulo (Ciclo de Vida e Estágios) ➡️