Как вернуть значки, указывающие статус git в оболочке Windows?

В проводнике Windows значок зеленого значка для обновленных репозиториев и красная метка для тех, которые больше не отображаются.

Как вернуть их?

См. Прилагаемые изображения. Например, у меня есть некоторые невоспроизводимые файлы в репозитории с именем Temp.

введите описание изображения здесь

Однако ни одна из папок не имеет зеленых или красных значков, отображающих статус репозитория git.

введите описание изображения здесь

Раньше они были там раньше. Они внезапно исчезли несколько недель назад.

Я использую 64-битную Windows 7 Home Premium.

Решение этого было предоставлено @ magicandre1981 в комментариях к этому вопросу. Вот моя попытка объяснить решение.

Похоже, что приложения, такие как Tortoise Git, Dropbox, Google Drive и т. Д., Которые представляют разные значки перед файлами и папками проводника Windows, делают это, создавая надпись поверх обычных значков, которые рисует Windows. По-видимому, приложение регистрирует эти оверлеи, и Windows перерисовывает каждое наложение после завершения основного чертежа объектов файловой системы.

Однако Windows накладывает ограничение на количество накладок, которые он будет соблюдать. Любое количество приложений может регистрировать любое количество наложений с Windows. Но Windows будет выбирать только первые 15 оверлеев, зарегистрированных с ним, и повторно рисовать их. Остальное будет проигнорировано.

Реестр Windows поддерживает порядок и количество зарегистрированных наложений. В частности, этот ключ имеет список HKEY_LOCAL_MACHINE \ Software \ Microsoft \ Windows \ CurrentVersion \ Explorer \ ShellIconOverlayIdentifiers , как показано на рисунке ниже.

введите описание изображения здесь

Объяснение этого также можно найти на этой веб-странице .

Как видно, Dropbox и Google Диск уже зарегистрировали более 15 наложений, поэтому Windows никогда не получала возможность отмечать накладки, зарегистрированные Tortoise Git на моей машине.

Я удалил Dropbox и Google Диск, так как я не использовал их функцию синхронизации.

введите описание изображения здесь

Я не видел никаких изменений, поэтому перезапустил свою машину. Я все еще не видел никаких изменений, но примерно через 30 минут после перезагрузки моей машины значки были восстановлены в обычном режиме, то есть я начал очень хорошо видеть состояние Git для Tortoise для моих репозиториев.

введите описание изображения здесь