github/gitignore · Global/Windows.gitignore
Template .gitignore do Windows explicado
Explica por que o Windows.gitignore ignora Thumbs.db, desktop.ini, $RECYCLE.BIN, pacotes de instalação e atalhos, e os cuidados com maiúsculas e com a configuração global.
O Windows.gitignore bloqueia os arquivos que o Explorador e o shell do Windows criam nas pastas, e os formatos de pacotes de instalação. É curto, com cerca de 13 linhas, e, como o template do macOS, é adequado para um gitignore global pessoal.
O sistema de arquivos do Windows não diferencia maiúsculas de minúsculas, mas o git compara os padrões diferenciando-as por padrão. Por isso há regras que escrevem as duas formas, como [Dd]esktop.ini.
Explicação regra por regra
| Padrão | O que ignora e por quê |
|---|---|
Thumbs.dbThumbs.db:encryptableehthumbs.dbehthumbs_vista.db | Cache de miniaturasÉ o cache de miniaturas que o Explorador criava nas pastas de imagens. A partir do Vista é usado um cache central, mas em unidades de rede ou com configurações antigas ele ainda aparece. |
[Dd]esktop.ini | Configuração de pastaÉ um arquivo de sistema oculto com informações personalizadas, como o ícone e o nome de exibição da pasta. |
$RECYCLE.BIN/ | LixeiraÉ a pasta da lixeira que aparece em unidades removíveis ou na raiz de volumes. É pega se você criar o repositório na raiz de uma unidade. |
*.cab*.msi*.msix*.msm*.msp | Pacotes de instalaçãoSão pacotes do Windows Installer, módulos de mesclagem, patches e arquivos compactados cabinet. São tratados como resultados de build ou arquivos de distribuição. |
*.lnk*.stackdump | Atalhos e dumpsSão arquivos de atalho pessoais e os dumps deixados por programas do Cygwin e do MSYS ao terminar de forma anormal. |
Cuidados na prática
- O
core.ignorecasecostuma ficartruequando o repositório é criado no Windows ou no macOS. Nesse caso a correspondência ignora maiúsculas, mas em uma CI com Linux elas são diferenciadas, então a notação com colchetes é mais segura. No testador de padrões você pode ativar e desativar a opção core.ignorecase para comparar. - Se você realmente precisa guardar instaladores no repositório (por exemplo, um repositório de distribuição de drivers), apague a linha
*.msiou crie a exceção!installers/*.msi. - Os arquivos relacionados ao Visual Studio são tratados pelo template VisualStudio.
Template original
Windows.gitignore
# Windows thumbnail cache filesThumbs.dbThumbs.db:encryptableehthumbs.dbehthumbs_vista.db# Dump file*.stackdump# Folder config file[Dd]esktop.ini# Recycle Bin used on file shares$RECYCLE.BIN/# Windows Installer files*.cab*.msi*.msix*.msm*.msp# Windows shortcuts*.lnk
Origem dos templates: github/gitignore/Global/Windows.gitignore @356fd7b (2026-09-11) · CC0-1.0