如何在Windows Shell中带回表示git状态的图标?

Wat*_* v2 2 git tortoisegit

在Windows资源管理器中,最新版本的存储库为绿色的选中图标,对于不再显示的存储库为红色的标记。

我该如何带他们回来?

请参阅所附图片。例如,我在名为Temp的存储库中确实有一些未跟踪的文件。

在此处输入图片说明

但是,所有文件夹都没有绿色或红色图标来显示git存储库状态。

在此处输入图片说明

他们曾经很早就在那里。他们在几周前突然消失了。

我正在使用64位Windows 7 Home Premium。

Wat*_* v2 5

@ 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 Drive已经总共注册了15个以上的叠加层,这就是Windows从来没有机会兑现Tortoise Git在我的计算机上注册的叠加层的原因。

我卸载了Dropbox和Google云端硬盘,因为我没有太多使用它们的同步功能。

在此处输入图片说明

我没有看到任何变化,所以我重新启动了机器。我仍然没有看到任何变化,但是在重启机器大约30分钟后,图标恢复了正常状态,即,我开始看到我的存储库的Tortoise git状态很好。

在此处输入图片说明