Created
June 7, 2026 17:45
-
-
Save vdonoladev/157c678bd91396c8cf0f9373e261712d to your computer and use it in GitHub Desktop.
Minhas configurações personalizadas do Git
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # Informações do usuário que aparecerão nos commits | |
| [user] | |
| name = vdonoladev # Nome do autor dos commits | |
| email = victordonolaf@gmail.com # Email do autor dos commits | |
| # Configurações de inicialização de repositórios | |
| [init] | |
| defaultBranch = main # Nome padrão da branch principal (antes era "master") | |
| # Configurações principais do Git | |
| [core] | |
| editor = code --wait # Define VS Code como editor padrão (--wait faz o Git esperar o editor fechar) | |
| autocrlf = input # Converte CRLF (Windows) para LF (Linux/Mac) automaticamente | |
| whitespace = trailing-space,space-before-tab # Remove espaços em branco no final das linhas | |
| pager = delta # Substitui o diff padrão pelo delta (syntax highlight) — requer: sudo apt install git-delta | |
| excludesFile = ~/.gitignore_global # Gitignore global para todos os projetos (.env, .DS_Store, etc.) | |
| # Configurações de cores no terminal | |
| [color] | |
| ui = auto # Ativa cores automaticamente no Git | |
| branch = auto # Coloriza saída do comando branch | |
| diff = auto # Coloriza saída do comando diff | |
| status = auto # Coloriza saída do comando status | |
| # Configurações de push (envio de commits) | |
| [push] | |
| default = current # Faz push apenas da branch atual | |
| autoSetupRemote = true # Cria automaticamente a branch remota se não existir | |
| # Configurações de pull (recebimento de commits) | |
| [pull] | |
| rebase = true # Usa rebase ao invés de merge no pull (histórico mais limpo) | |
| # Configurações de fetch (sincronização com remoto) | |
| [fetch] | |
| prune = true # Remove branches remotas deletadas automaticamente no fetch/pull | |
| pruneTags = true # Remove tags remotas deletadas também | |
| # Configurações de diff (comparação de alterações) | |
| [diff] | |
| algorithm = histogram # Usa algoritmo mais inteligente para diffs | |
| renames = copies # Detecta quando arquivos são renomeados ou copiados | |
| colorMoved = default # Colore blocos de código movidos (diferente de adicionados/removidos) | |
| # Configurações de merge (mesclagem de branches) | |
| [merge] | |
| ff = false # Sempre cria commit de merge (mantém histórico completo) | |
| tool = vscode # Usa VS Code para resolver conflitos de merge | |
| conflictstyle = zdiff3 # Mostra o ancestral comum no conflito, facilita resolver | |
| # Configuração da ferramenta de merge do VS Code | |
| [mergetool "vscode"] | |
| cmd = code --wait $MERGED # Comando para abrir arquivo com conflito no VS Code | |
| # Configurações de rebase (reorganização de commits) | |
| [rebase] | |
| autoStash = true # Salva alterações automaticamente antes do rebase | |
| autoSquash = true # Combina commits marcados com fixup/squash automaticamente | |
| # Melhorias de performance | |
| [feature] | |
| manyFiles = true # Otimiza Git para repositórios com muitos arquivos | |
| # Configurações de credenciais | |
| [credential] | |
| helper = cache --timeout=900 # Guarda credenciais em cache por 15 minutos (900 segundos) | |
| # Aliases (atalhos personalizados para comandos Git) | |
| [alias] | |
| st = status -sb # Status resumido com branch atual | |
| cm = commit -m # Commit rápido com mensagem (uso: git cm "mensagem") | |
| lg = log --oneline --graph --decorate --all # Log visual com gráfico de branches | |
| undo = reset HEAD~1 --soft # Desfaz último commit mantendo as alterações | |
| last = log -1 HEAD --stat # Mostra detalhes e arquivos do último commit | |
| br = branch --sort=-committerdate # Lista branches por data, mais recente primeiro | |
| up = pull --rebase --autostash # Atualiza com rebase e stash automático | |
| wip = commit -am "wip" # Salva tudo rapidamente como work-in-progress | |
| unstage = restore --staged . # Tira todos os arquivos do staging | |
| discard = restore . # Descarta todas as alterações não commitadas | |
| stsh = stash --include-untracked # Stash incluindo arquivos novos (não rastreados) | |
| contributors = shortlog -sn --no-merges # Ranking de commits por autor | |
| aliases = config --get-regexp alias # Lista todos os aliases configurados |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment