O GitHub é uma plataforma online que hospeda repositórios Git e facilita a colaboração em equipe, controle de versões e integração com ferramentas externas.
Nesta seção, você aprenderá a configurar SSH, trabalhar com repositórios remotos, sincronizar forks e fechar issues diretamente via commits.
Evita digitar usuário e senha toda vez que enviar ou baixar alterações.
# Gerar uma nova chave SSH
ssh-keygen -t rsa -b 4096 -C "seuemail@exemplo.com"
# Visualizar chave pública (Linux)
cat ~/.ssh/id_rsa.pub
# Visualizar chave pública (Mac)
cat /Users/<usuario>/.ssh/id_rsa.pub- Acesse Settings > SSH and GPG keys > New SSH key.
- Cole a chave pública e defina um título identificando sua máquina.
- Teste a conexão:
ssh -T git@github.com💡 Dica: Use sempre uma chave por máquina e nunca compartilhe a privada.
Adicionando um repositório remoto
git remote add origin git@github.com:usuario/repositorio.gitVerificando repositórios remotos
git remote -vAlterando a URL do remoto
git remote set-url origin git@github.com:usuario/repositorio.gitRemovendo um repositório remoto
git remote rm originEnviando alterações
git push origin mainBaixando alterações
git fetch origin
git pull origin main💡 Dica: Sempre use
git fetchantes degit pullpara revisar alterações remotas.
Quando você deseja contribuir para um repositório de outra pessoa:
- Faça um fork no GitHub.
- Clone seu fork localmente:
git clone git@github.com:seuusuario/repositorio.git- Adicione o repositório original como upstream:
git remote add upstream git@github.com:autor-original/repositorio.git- Sincronize alterações do upstream:
git fetch upstream
git checkout main
git merge upstream/main💡 Dica: Mantenha seu fork atualizado para evitar conflitos antes de criar pull requests.
Você pode fechar automaticamente uma issue quando o commit for mergeado:
git commit -m "Corrige bug de login - fix #42"Palavras-chave suportadas pelo GitHub:
fix, fixes, fixed, close, closes, closed, resolve, resolves, resolved
O número da issue vem da URL: ex: #42.
- Nunca compartilhe sua
chave SSH privada. - Evite
push -fem branches compartilhadas. - Trabalhe sempre em branches de feature ou bugfix.
- Antes de abrir um pull request, sincronize sua branch:
git fetch upstream
git rebase upstream/mainou
git merge upstream/main- Use mensagens de commit claras e semânticas (
feat:,fix:,chore:). - Para alterações grandes, prefira pull requests pequenos.
- Verifique status e histórico antes de enviar:
git status
git log --oneline --graph --decorate🌳 Fluxo Visual - GitHub e Repositórios Remotos
flowchart TD
Local[Repositório Local] -->|git push| Origin[GitHub - seu fork]
Origin -->|pull request| Upstream[GitHub - repositório original]
Upstream -->|merge PR| Origin
Local -->|git fetch upstream| Upstream
- Configure SSH para autenticação sem senha.
- Sempre crie branches separadas para cada feature ou correção.
- Mantenha forks atualizados com o upstream.
- Feche issues via commit usando palavras-chave.
- Revise alterações e histórico antes de push ou merge.