Folha de Consulta de Comandos Git

Manual de referência completo de comandos Git, organizado por categoria para consulta rápida

Todos: 65 个命令

Comandos Básicos(13)

git init

Criar um novo repositório Git no diretório atual

git clone <url>

Clonar um repositório remoto para local

git clone --depth=1 <url>

Clone shallow, busca apenas o commit mais recente

git add <file>

Adicionar arquivo à área de staging

git add .

Adicionar todas as mudanças à área de staging

git commit -m "message"

Commit staged changes

git commit --amend

Modificar o último commit

git status

Mostrar status atual do repositório

git diff

Mostrar mudanças não staged

git diff --staged

Mostrar mudanças staged

git config --list

Mostrar toda configuração

git config --global user.name "name"

Definir nome de usuário global

git config --global user.email "email"

Definir email global

Gerenciamento de Branch(14)

git branch

Listar todas as branches locais

git branch -a

Listar todas as branches (incluindo remotas)

git branch <name>

Criar uma nova branch

git branch -d <name>

Deletar uma branch

git branch -m <old> <new>

Renomear uma branch

git checkout <branch>

Mudar para uma branch

git checkout -b <branch>

Criar e mudar para nova branch

git switch <branch>

Mudar para uma branch (Git 2.23+)

git switch -c <branch>

Criar e mudar para nova branch (Git 2.23+)

git merge <branch>

Merge branch especificada na branch atual

git merge --no-ff <branch>

Merge com um merge commit

git rebase <branch>

Rebase branch atual na branch especificada

git rebase --continue

Continuar rebase após resolver conflitos

git cherry-pick <commit>

Aplicar commit específico na branch atual

Operações Remotas(10)

git remote -v

Mostrar detalhes do repositório remoto

git remote add <name> <url>

Adicionar um repositório remoto

git fetch <remote>

Buscar conteúdo mais recente do remoto

git fetch --all

Buscar atualizações de todos os remotos

git pull <remote> <branch>

Buscar e merge branch remota

git pull --rebase

Buscar e rebase

git push <remote> <branch>

Push para repositório remoto

git push -f

Forçar push (use com cuidado)

git push -u origin <branch>

Push e definir branch upstream

git push origin --delete <branch>

Deletar branch remota

Desfazer Mudanças(8)

git reset <file>

Unstage um arquivo

git reset --soft HEAD~1

Desfazer último commit, manter mudanças

git reset --mixed HEAD~1

Desfazer commit e staging, manter working directory

git reset --hard HEAD~1

Desfazer commit e descartar todas as mudanças

git revert <commit>

Desfazer um commit (cria novo commit)

git restore <file>

Restaurar arquivo do working directory (Git 2.23+)

git restore --staged <file>

Unstage arquivo (Git 2.23+)

git clean -fd

Remover arquivos e diretórios não rastreados

Gerenciamento de Tags(6)

git tag

Listar todas as tags

git tag <name>

Criar uma tag lightweight

git tag -a <name> -m "msg"

Criar uma tag annotated

git tag -d <name>

Deletar tag local

git push origin <tag>

Push tag para remoto

git push --tags

Push todas as tags para remoto

Ver Histórico(7)

git log

Mostrar histórico de commits

git log --oneline

Mostrar histórico de commits compacto

git log --oneline --graph --all

Mostrar histórico de todas as branches como graph

git show <commit>

Mostrar detalhes do commit

git blame <file>

Mostrar histórico de modificação para cada linha

git reflog

Mostrar todo histórico de operações

git bisect start

Iniciar binary search para commit problemático

Stash(7)

git stash

Stash mudanças atuais

git stash save "message"

Stash mudanças com mensagem

git stash list

Listar todos os stashes

git stash pop

Aplicar e drop o stash mais recente

git stash apply

Aplicar stash sem drop

git stash drop

Drop o stash mais recente

git stash clear

Remover todos os stashes

O que é Git?

Git é um sistema de controle de versão distribuído criado por Linus Torvalds para gerenciar histórico de código de projeto. Suporta desenvolvimento colaborativo, rastreia cada mudança de código, e fornece gerenciamento de branch e rollback de versão.

Dominar comandos Git é essencial para cada desenvolvedor. Esta folha de consulta organiza os comandos Git mais usados por categoria para referência rápida e aprendizado.

Como Usar

Clique qualquer card de comando para copiar o comando. Use a caixa de busca para encontrar comandos específicos. Clique tabs de categoria para filtrar comandos por tipo.

Dicas Comuns

Desfazer git add
Use git restore --staged ou git reset para unstage
Modificar último commit
Use git commit --amend para modificar a mensagem ou conteúdo do último commit
Salvar progresso de trabalho
Use git stash para temporariamente salvar trabalho e mudar para outras branches
Desfazer commit pushed
Use git revert em vez de git reset para evitar quebrar histórico remoto
Ver histórico de arquivo
Use git log -p para ver histórico completo de modificação de um arquivo

FAQ

Q: Qual a diferença entre git pull e git fetch?

A: git fetch apenas baixa atualizações remotas sem merge; git pull equals git fetch + git merge. É recomendado usar fetch primeiro para revisar mudanças antes de decidir como merge.

Q: Como desfazer o último commit?

A: Use git reset --soft HEAD~1 para desfazer commit mas manter mudanças; use git reset --hard HEAD~1 para completamente desfazer e descartar mudanças. Se já pushed, use git revert para segurança.

Q: Como resolver conflitos de merge?

A: Manualmente edite arquivos conflitantes para escolher qual conteúdo manter, então git add para marcar como resolvido, finalmente git commit para completar merge. Use git mergetool para resolução visual de conflitos.

Q: Qual a diferença entre git merge e git rebase?

A: merge cria um merge commit preservando histórico da branch; rebase move commits para ponta da branch target fazendo histórico mais linear. Use merge para branches compartilhadas, rebase para branches locais.

Q: Como remover um arquivo grande do histórico?

A: Use git filter-branch ou BFG Repo-Cleaner. Note que isso reescreve histórico requerendo force push.