问题原因
Win10环境有时突然会发现Git文件和文件夹上的图标消失了。
多数情况原因是Windows在安装新软件时,写入了更高优先级的注册表。
所以如果需要恢复数据的话,也是要从注册表开始。
解决方案
创建reg文件,如1.reg,写入如下代码并执行:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers]
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\ Tortoise1Normal]
@="{C5994560-53D9-4125-87C9-F193FC689CB2}"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft
\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\ Tortoise2Modified]
@="{C5994561-53D9-4125-87C9-F193FC689CB2}"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\ Tortoise3Conflict]
@="{C5994562-53D9-4125-87C9-F193FC689CB2}"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\ Tortoise4Locked]
@="{C5994563-53D9-4125-87C9-F193FC689CB2}"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\ Tortoise5ReadOnly]
@="{C5994564-53D9-4125-87C9-F193FC689CB2}"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\ Tortoise6Deleted]
@="{C5994565-53D9-4125-87C9-F193FC689CB2}"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\ Tortoise7Added]
@="{C5994566-53D9-4125-87C9-F193FC689CB2}"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\ Tortoise8Ignored]
@="{C5994567-53D9-4125-87C9-F193FC689CB2}"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\ Tortoise9Unversioned]
@="{C5994568-53D9-4125-87C9-F193FC689CB2}"
这里解释一点,Windows处理图标显示优先级时,是排在前面的优先显示,所以上面代码中有很多空格,这是特意写的,目的就是将这个注册表顺序提升到最高(至少要比其他注册表字段高,也就是空格更多)。