github/gitignore · Global/Windows.gitignore
Разбор шаблона .gitignore для Windows
Почему Windows.gitignore игнорирует Thumbs.db, desktop.ini, $RECYCLE.BIN, установочные пакеты и файлы ярлыков, и что учесть с регистром и глобальной настройкой.
Windows.gitignore блокирует файлы, которые Проводник и оболочка Windows создают в папках, а также форматы установочных пакетов. Он короткий, около 13 строк, и, как и шаблон macOS, хорошо подходит для личного глобального gitignore.
Файловая система Windows не различает регистр, но git по умолчанию сравнивает шаблоны с учётом регистра. Поэтому есть правила, где записаны оба варианта, например [Dd]esktop.ini.
Разбор правил
| Шаблон | Что и почему игнорируется |
|---|---|
Thumbs.dbThumbs.db:encryptableehthumbs.dbehthumbs_vista.db | Кэш эскизовКэш эскизов, который Проводник создавал в папках с изображениями. Начиная с Vista используется централизованный кэш, но на сетевых дисках и при старых настройках эти файлы всё ещё появляются. |
[Dd]esktop.ini | Настройки папокСкрытые системные файлы с пользовательскими настройками, например значком папки и отображаемым именем. |
$RECYCLE.BIN/ | КорзинаПапка корзины, появляющаяся в корне съёмных дисков и томов. Попадается, если репозиторий создан в корне диска. |
*.cab*.msi*.msix*.msm*.msp | Установочные пакетыПакеты Windows Installer, модули слияния, исправления и архивы cabinet. С ними обращаются как с результатами сборки или файлами для распространения. |
*.lnk*.stackdump | Ярлыки и дампыЛичные файлы ярлыков и дампы, которые оставляют программы Cygwin и MSYS при аварийном завершении. |
На что обратить внимание на практике
core.ignorecaseобычно устанавливается вtrue, если репозиторий создан в Windows или macOS. Тогда совпадение не зависит от регистра, но в CI на Linux регистр различается, поэтому запись со скобками надёжнее. В тестере шаблонов можно сравнить результаты, включая и выключая параметр core.ignorecase.- Если установочные файлы обязательно нужно хранить в репозитории (например, в репозитории для распространения драйверов), удалите строку
*.msiили добавьте исключение!installers/*.msi. - Файлы, связанные с Visual Studio, покрывает шаблон VisualStudio.
Исходный шаблон
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
Источник шаблонов: github/gitignore/Global/Windows.gitignore @356fd7b (2026-09-11) · CC0-1.0