Tutorial rápido de Git
Tutorial rápido de Git
Fala, pessoal! Hoje vou mostrar como instalar e dar os primeiros passos com o Git.
Se você nunca mexeu com controle de versão, o Git é a melhor forma de organizar seus projetos e colaborar com outras pessoas.
Eu já passei pelo perrengue de salvar várias versões do mesmo arquivo com nome tipo “projeto_final_v2_definitivo_agora_sim.docx”. Pois é… 😂 Com o Git isso acaba: você tem histórico, pode reverter mudanças e trabalhar em equipe sem bagunça.
Neste tutorial, você vai instalar, configurar e fazer os primeiros commits no WSL/Ubuntu. É tranquilo e vai te poupar muita dor de cabeça, seja em projetos de código ou de escrita.
Essa ferramenta vai mudar a sua vida. Ah, se vai! 🚀
O que é o Git?
O Git é um sistema de controle de versão distribuído Armazena o histórico dos arquivos localmente e permite colaboração eficiente. . Ele salva o histórico dos seus arquivos, permite voltar atrás em qualquer alteração, clonar repositórios do GitHub e facilita o trabalho em equipe.
Na prática, ele é a máquina do tempo dos seus projetos.
O que você vai precisar antes:
- Se estiver no Windows, use o WSL.
- Se ainda não configurou, veja o tutorial do WSL.
- Crie sua conta no GitHub (é lá que seus repositórios podem ficar na nuvem).
Dica: para facilitar o login mais tarde, ative o 2FA na sua conta do GitHub.
Passo a passo
- Instalando
- Configurando
- Criando um repositório
- Primeiro commit
- Conectando ao GitHub
- Clonando e sincronizando
- Erros comuns e como corrigir
1. Instalando
No terminal do WSL/Ubuntu:
sudo apt update && sudo apt install -y git
Verifique se deu certo — vai aparecer a versão instalada:
git --version
2. Configurando
Antes de usar, diga ao Git quem é você (isso aparece no histórico dos commits):
git config --global user.name "Seu Nome" git config --global user.email "seu@email.com"
Dica (opcional): deixar o Git colorido ajuda a ler os logs:git config --global color.ui autoPadronize a branch inicial comomain
:git config --global init.defaultBranch main
3. Criando um repositório
Crie uma pasta e inicialize o Git:
mkdir meu_projeto cd meu_projeto git init
Agora confira o status:
git status
Se aparecer algo como “On branch master” e um aviso sobre main, está tudo ok — é só um hint.
Quer começar já com main aqui?git branch -m main
4. Primeiro commit
Crie um arquivo e adicione ao Git:
echo "# Meu projeto" > README.md git add README.md git commit -m "feat: primeiro commit"
Para adicionar tudo que mudou de uma vez:
git add . git commit -m "att todos os arquivos"
5. Conectando ao GitHub
- Crie um repositório vazio no GitHub.
- Conecte o remoto e envie:
git remote add origin https://github.com/christopherwilliamlee/meu_projeto.git git branch -M main git push -u origin main
Autenticação: usando HTTPS, o Git pode pedir um token pessoal (PAT) em vez de senha. Gere em Settings → Developer settings → Personal access tokens e use-o quando o Git pedir a senha.
6. Clonando e sincronizando
Clonar um repositório existente:
git clone https://github.com/usuario/projeto.git cd projeto
Trazer mudanças do remoto:
git pull
Prefere rebase por padrão ao puxar?git config --global pull.rebase true
Enviar suas mudanças:
git push
E no seu GitHub, o repo aparece atualizado bonitinho.
7. Erros comuns e como corrigir
Alguns perrengues que você provavelmente vai encontrar no começo:
-
Erro:
fatal: not a git repository
Você esqueceu de rodargit init
ou está fora da pasta do projeto.
Entre na pasta correta ou rodegit init
. - Erro:
fatal: remote origin already exists
Você já adicionou o remoto antes.
Use:git remote remove origin git remote add origin https://github.com/usuario/projeto.git
- Erro:
failed to push some refs
O repositório remoto tem commits que você não tem localmente.
Rode:git pull --rebase origin main
Depois, tente o
git push
novamente. - Erro: Conflito de merge (
CONFLICT
)
Duas pessoas alteraram o mesmo arquivo na mesma parte.
Abra o arquivo, resolva os<<<<<<<
e>>>>>>>
, salve e depois:git add nome_do_arquivo git commit -m "fix: resolve merge conflict"
(Se estava rebaseando, use
git rebase --continue
após ogit add
.)
Comandos básicos do Git e que você vai usar!
Comando | Descrição |
---|---|
git config --global user.name "Seu Nome" |
Define seu nome globalmente |
git config --global user.email "seu@email.com" |
Define seu e-mail globalmente |
git config --list |
Mostra todas as configurações |
git init |
Cria um novo repositório Git na pasta atual |
git clone URL |
Baixa um repositório existente (ex.: do GitHub) |
git status |
Mostra arquivos modificados, adicionados ou pendentes |
git log |
Mostra o histórico completo de commits |
git log --oneline --graph --decorate --all |
Histórico resumido e visual |
git diff |
Mostra o que foi alterado antes de commitar |
git add arquivo.txt |
Adiciona um arquivo para o próximo commit |
git add . |
Adiciona todos os arquivos modificados |
git commit -m "mensagem" |
Salva as mudanças no histórico com uma mensagem |
git commit --amend |
Edita o último commit (mensagem ou arquivos) |
git remote add origin URL |
Conecta o projeto local a um repositório remoto |
git remote -v |
Lista os repositórios remotos configurados |
git push origin main |
Envia as alterações locais para o GitHub |
git pull origin main |
Baixa atualizações do GitHub para sua máquina |
git fetch |
Busca mudanças do remoto sem mesclar automaticamente |
git branch |
Lista as branches existentes |
git branch nome |
Cria uma nova branch |
git checkout nome |
Muda para outra branch |
git checkout -b nome |
Cria e já muda para uma branch nova |
git merge nome |
Mescla a branch nome na branch atual |
git branch -d nome |
Apaga a branch local |
git checkout -- arquivo.txt |
Desfaz mudanças em um arquivo |
git reset --soft HEAD~1 |
Desfaz o último commit, mas mantém os arquivos |
git reset --hard HEAD~1 |
Desfaz o último commit e apaga as mudanças |
git revert (hash) |
Cria um novo commit que desfaz as mudanças de um commit anterior |
.gitignore |
Define arquivos/pastas que o Git deve ignorar (ex.: node_modules/ , *.log , .env ) |
Viu só? O Git não é nenhum bicho de sete cabeças!
No começo pode parecer confuso, mas depois que pega o jeito vira automático.
Até a próxima, e lembre-se: commit cedo e commit sempre!
Dê um suporte ao meu projeto. Doe um cafézinho ☕.
Pix: biologolee@gmail.com
Bitcoin: bc1qg7qrfhclzt3sm60en53qv8fmwpuacfaxt5v55k