🐙 GitHub e repositórios
Leve seu repositório local para a nuvem: crie repos, configure SSH, use o gh CLI no terminal, abra PRs e escreva um README que impressiona. O GitHub é sua vitrine profissional.
🏗️ Criar repositório
Web vs gh CLI — dois caminhos para o mesmo destino
Via gh CLI (recomendado)
$ gh repo create meu-projeto --public --clone
$ gh repo create meu-projeto --private --add-readme
$ gh repo create # modo interativo (pergunta tudo)
Conectar repo local existente ao GitHub
$ git remote add origin git@github.com:user/repo.git
$ git push -u origin main
$ git remote -v # confirma remote configurado
✓ Repo público: ideal para portfólio
- ✓Indexado no Google e GitHub search
- ✓GitHub Pages gratuito e ilimitado
- ✓Contribuidores externos podem ajudar
🔒 Repo privado: para projetos internos
- →Código não exposto publicamente
- →Colaboradores precisam de convite
- →GitHub Pages requer plano pago (exceto orgs)
📡 Remote e push
Sincronizar local com o GitHub — o loop que vai repetir todo dia
Push envia, pull recebe — GitHub é o ponto central de sincronização.
$ git push -u origin main # primeiro push + configura tracking
$ git push # pushes seguintes (tracking já configurado)
$ git pull # baixa + mescla mudanças remotas
$ git fetch # baixa SEM mesclar (mais seguro)
$ git remote -v # lista remotes configurados
$ git remote set-url origin URL # muda a URL do remote
💡 push --force-with-lease: o jeito seguro
Nunca use git push --force em branch compartilhada — destrói o trabalho de outros. Use --force-with-lease: só força se ninguém pushinou antes de você.
🔑 SSH vs HTTPS
Autenticar uma vez, trabalhar para sempre sem digitar senha
SSH — recomendado para uso diário
- ✓Par de chaves: pública fica no GitHub, privada no seu computador
- ✓Sem digitação de senha a cada push/pull
- ✓URL:
git@github.com:user/repo.git - ✓Funciona perfeitamente com Claude Code em automação
HTTPS — mais simples de configurar
- →Token pessoal (PAT) no lugar de senha
- →URL:
https://github.com/user/repo.git - →Credential helper cacheia token
- →Mais fácil atrás de firewalls corporativos
# 1. Gerar chave
$ ssh-keygen -t ed25519 -C "seu@email.com"
# pressione Enter para aceitar o caminho padrão (~/.ssh/id_ed25519)
# 2. Copiar a chave pública
$ cat ~/.ssh/id_ed25519.pub
# copie todo o output e cole em GitHub → Settings → SSH keys → New SSH key
# 3. Testar conexão
$ ssh -T git@github.com
Hi usuario! You've successfully authenticated, but GitHub does not provide shell access.
# 4. Mudar remote existente de HTTPS para SSH
$ git remote set-url origin git@github.com:user/repo.git
⚡ gh CLI
GitHub no terminal — criar repos, PRs, releases e muito mais sem abrir browser
🤖 Claude Code usa gh extensivamente
Ao pedir para Claude Code criar PRs, verificar CI/CD, fazer releases ou abrir issues, ele usa gh nos bastidores. Entender os comandos permite auditar o que foi feito e customizar o comportamento.
# Autenticação
$ gh auth login # autentica com GitHub
$ gh auth status # verifica autenticação
# Repositórios
$ gh repo create nome --public --clone # cria e clona
$ gh repo view # detalhes do repo atual
$ gh repo clone user/repo # clona repo
# Pull Requests
$ gh pr create --title "feat: X" --body "Descrição"
$ gh pr list # lista PRs abertos
$ gh pr merge --squash --delete-branch # merge com squash
# Issues
$ gh issue create --title "Bug: X" --label bug
$ gh issue list --label "good first issue"
# Releases
$ gh release create v1.0.0 --generate-notes
$ gh release list
# GitHub Actions / CI
$ gh run list # lista execuções recentes
$ gh run watch # monitora execução em tempo real
⚡ Instalar gh CLI
# macOS: brew install gh
# Ubuntu/Debian: sudo apt install gh
# Windows: winget install GitHub.cli
🔀 Pull Requests
Colaboração estruturada — revisão antes do merge
Criar branch + commit + push
git checkout -b feature/nova-funcao
git add . && git commit -m "feat: adiciona nova funcão"
git push -u origin feature/nova-funcao
Abrir o PR via gh CLI
gh pr create \
--title "feat: adiciona nova funcão" \
--body "## O que faz\n- Item 1\n\n## Como testar\n- Passo 1" \
--base main
Revisar, aprovar e mesclar
gh pr review --approve # aprovar
gh pr merge --squash --delete-branch # merge com squash
gh pr checks # verificar CI
📖 README eficaz
Primeira impressão do projeto — a diferença entre ignorado e estrelado
# 🚀 Nome do Projeto
> Uma linha descrevendo o que faz e para quem.


## ✨ O que faz
Lista rápida com os principais benefícios.
## 🛠️ Tecnologias
- Lista de tecnologias usadas
## 🚀 Como usar
```bash
git clone ...
npm install
npm start
```
## 📸 Preview
[screenshot ou GIF aqui]
## 📄 Licença
MIT — veja LICENSE para detalhes.
✓ README que funciona
- ✓Primeira frase: explica o projeto em 10 segundos
- ✓Screenshot ou GIF acima da dobra
- ✓Instalação em menos de 3 comandos
- ✓Badges visuais de status, licença, versão
✗ README que afasta
- ✗README vazio ou "TODO"
- ✗Sem instruções de instalação
- ✗Paredes de texto sem formatação
- ✗Não atualizado após mudanças no projeto
🤖 Claude Code gera README
Peça: "Analise este projeto e gere um README.md completo com badges, instalação, uso e exemplos reais." Claude lê o código e gera documentação precisa em segundos.
🎯 Resumo do módulo
O que você aprendeu
- ✓Criar repositório via gh CLI ou web
- ✓Configurar remote e fazer push/pull
- ✓SSH com ed25519 — autenticação sem senha
- ✓gh CLI: repos, PRs, issues, releases
- ✓Fluxo de Pull Request completo
- ✓README estruturado que impressiona
Próximo módulo
Com o repositório no GitHub, o próximo passo é publicá-lo de graça com GitHub Pages — e colocar seu projeto acessível para o mundo inteiro em minutos.
Módulo 6.3 — GitHub Pages→