TortoiseGit no muestra superposiciones de iconos

133

he estado usando TortoiseGit durante casi un año completo ahora. Me ha funcionado muy bien hasta ayer, cuando encontré un problema. Estaba borrando una carpeta cuando el Explorador de Windows se me cayó (colgó de "descubrir elementos") durante más de una hora, luego reinicié el sistema.

Desde ese momento (y estoy no está seguro de si el incidente descrito tiene nada que ver con ello), TortoiseGit ha dejado de mostrar los íconos superpuestos en el explorador. Sin embargo, el comportamiento no es como ninguno de los otros que publicaron preguntas aquí, porque:

En el open filediálogo de todos los programas, los iconos aún existen (!).

Aquí hay una lista de cosas que probé:

  1. Cambié la configuración de TortoiseGit para mostrar diferentes íconos.
  2. Vuelva a instalar TortoiseGit (desinstalar, reiniciar, instalar, reiniciar).
  3. Eliminé todas las superposiciones de iconos comenzando con "Tortoise" HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer \ShellIconOverlayIdentifiers, luego desinstalé TortoiseGit, reinicié la computadora y reinstalé TortoiseGit.

Editar:

Intenté crear un nuevo usuario en mi computadora, y el nuevo usuario tiene superposiciones de iconos que funcionan bien. Ahora estoy aún más confundido.

Nada ayudó hasta ahora. ¿Algunas ideas?

5xum
fuente
¿Tienes instalado TortoiseSVN?
mozgow
@mozgow No, solo TortoiseGit
5xum
55
A mi me pasó lo mismo. La mía sucedió porque instalé "Dropbox" en mi máquina. Dropbox también usa IconOverlays, y se clasifican más arriba en la lista que TortoiseGit. Y dado que solo puede tener 15, es posible que no los vea por ese motivo. Los míos comienzan en la lista del 19 al 28, de ahí mi razón para no verlos. Use la sugerencia de Dzhuang a continuación para ver dónde se ubican sus superposiciones en la lista.
Chad
Posible duplicado de las superposiciones de iconos
MrTux
@ MrTux Me gustaría saber cómo considera que una pregunta formulada el 6 de agosto de 2014 es un duplicado de una pregunta que se hizo el 11 de enero de 2017 (es decir, más de 2 años después ).
5xum

Respuestas:

130

Tuve el mismo problema y lo puse a funcionar siguiendo las instrucciones de un foro. Lo que hice fue esto (copiado):

Encuentro la solución :) Envolviendo con "" todas las llaves de tortuga debajo HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers

encendido 1TortoiseNormaly etc ... Comprendí el problema, ya que Dropbox funcionaba regedit si había el signo ( "") en Dropbox pero no la tortuga. Así que agregué los signos, cierre explorer.exe y espere que fuera bueno :)

Así que lo que hice fue cambiar el nombre de la clave 1TortoiseNormalde"1TortoiseNormal" etc. No tengo idea de por qué incluirlo entre comillas dobles lo hace funcionar nuevamente.

El foro original se ha ido, pero se proporciona un buen resumen en los comentarios.

Chi Chan
fuente
33
Probablemente sea una cuestión de clasificación. El carácter de comillas dobles es uno de los primeros caracteres imprimibles, por lo que "DropboxExt1" aparece antes de 1TortoiseNormal, pero "1TortoiseNormal" aparece antes de "DropboxExt1". También intenté eliminar la comilla doble de las teclas de Dropbox y funcionó.
user34814
55
Aprendí algo de las entradas de Skype. En lugar de ajustarlo "" (comillas dobles) simplemente agregue un espacio al comienzo de las entradas. Entonces las entradas serían <space-char> 1TortoiseNormal y etc ... Finalmente, es una cuestión de clasificación :) parece.
Pratham
55
También tuve el mismo problema después de instalar Dropbox. Encontré la razón / solución en este blog clara, sin embargo, después de cambiar el nombre de las teclas de tortuga, no parecían recurrir a la parte superior de la lista ... Me tomó un tiempo darme cuenta de que las teclas de Dropbox tenían un espacio en la parte delantera .. así que cambié el nombre de las tortugas a <space> 1TortoiseNormal, etc. BLOG: blog.garethjmsaunders.co.uk/2015/03/22/…
user1420372
10
@CodyStott Resulta que MS ahora está haciendo lo mismo ... Los iconos de OneDrive también comienzan con un espacio ... En 10 años después de que todas las compañías descubran este truco, todos los nombres clave comenzarán con docenas de espacios ...: p
Stijn de Witt
30
ACTUALIZACIÓN: Dropbox ahora también agrega 3 espacios al frente ... MS, por favor tome nota (bueno, ya lo hizo ya que OneDrive está usando este truco) y tome medidas . Esto apesta por completo. ¿Y qué pasa con este ícono de 11/15 como máximo? ¿Es 2017? No necesito otra revisión de la interfaz de usuario ... ¡Necesito cosas como esta para arreglarlas en menos de 2 décadas!
Stijn de Witt
102

Windows solo permitirá hasta 11 identificadores de superposición de iconos, organizados en orden alfanumérico; si hay más de 11, estos iconos no se mostrarán.

Puede ejecutar el siguiente comando en un indicador de DOS:

regedit /e c:\icons.txt HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers

Luego abra el archivo C:\icons.txt. Omita las dos primeras líneas, y si 1TortoiseNormaly los otros *Tortoise*valores no están en los 11 valores principales, sus superposiciones de iconos no se mostrarán. La solución proporcionada por @Chi Chan es solo una manera simple de hacer que el 1TortoiseNormalrango sea más alto cuando se ordena entre todas las superposiciones, también puede cambiar el nombre de los valores agregando espacios antes 1TortoiseNormal, es decir,

" 1TortoiseNormal"

para hacerlos clasificar más alto.

actualización: para Windows 8, el límite de superposiciones de iconos es 15.

Dzhuang
fuente
35
Jajaja Así que acabo de actualizar a Windows 10 y faltaban mis íconos de TortoiseGit, así que busqué y encontré este hilo ... ¡¡Resulta que Microsoft probablemente también leyó este hilo porque los iconos de OneDrive comienzan con un espacio por defecto !! Qué tonto es que Microsoft recurriera a eso ... en lugar de simplemente construir una pantalla que nos permita configurar el orden / prioridad de las anotaciones de íconos desde la configuración de Windows.
Stijn de Witt
20
@StijndeWitt GoogleDrive y TortoiseSVN / Git ahora parecen haber subido la apuesta y agregado 2 espacios. Ahora estamos oficialmente en una carrera espacial ...
icc97
15
@ icc97 LOL @ 'carrera espacial'. Pero DropBox está un paso por delante de estos aficionados ... agregan 3 espacios: [....\ DropboxExt01](editar: SO los colapsa en 1 parece ...)
Stijn de Witt
8
¡¡NOTA!! Reinicie el Explorador de Windows para que aparezcan los íconos. Presione Ctrl + Shift + Esc y reinicie "Windows Explorer" (Opcionalmente reinicie la computadora)
PhillipPDX
77
También comenté anteriormente, pero quería agregar aquí que todos los grandes proveedores de la nube (onedrive, dropbox, google drive) ahora leen DINÁMICAMENTE la lista y se ADAPTARÁN AUTOMÁTICAMENTE y ocuparán espacios para "ganar" la guerra ... hasta el próximo se actualiza y hace lo mismo. ¡El mío ahora tiene literalmente todos al menos CINCO espacios principales! Además, son 15 de Vista y posteriores.
Collin Chaffin
40

Pasos de la solución de Windows 10;

  1. Regedit abierto

Camino :

HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Explorer \ ShellIconOverlayIdentifiers

  1. Elimine / elimine todas las claves de SkyDrive / OneDrive. Es posible que deba tomar posesión de las claves una por una y otorgarle a su usuario control total si recibe un error al intentar eliminar las claves.

  2. Presione Ctrl + Shift + Esc y reinicie "Windows Explorer" (Opcionalmente reinicie la computadora)

  3. ¡Todos los iconos de superposición de git / svn ahora están visibles!

replicantspy
fuente
Esto funciona para mi. Parece que hay un límite en el número de superposiciones de iconos permitidas en el explorador de Windows.
Yodacheese
66
Por alguna razón, no pude eliminar las claves de OneDrive. Acabo de agregar tres espacios al inicio de las teclas Tortoise, reinicié y funcionó nuevamente.
NickH
1
OneDrive vuelve a colocar las claves la próxima vez que vuelva a iniciar sesión.
Mike Lowery
2
En lugar de eliminar las claves existentes, solo puede agregar dos (o más) espacios en frente de todas las claves de Tortoise . Tendrá el mismo efecto, ¡y le permitirá unirse a la carrera espacial!
Corpus Gigantus
28

Antes de volverse loco, ¡solo intente reiniciar! Funcionó para mí;)

Jan Hettich
fuente
8
Honestamente, ¿realmente crees que no intenté eso? De hecho, escribí que reinicié mi computadora en el paso 2.
5xum
14
El voto negativo no tiene justificación. Mi respuesta fue para beneficio de otros que vinieron a esta página como lo hice yo, cuando experimenté el problema. Debo haber perdido media hora tratando de averiguar cuál era el problema, antes de reiniciar mi PC. Aprecio que esto no funcionó para usted, pero podría funcionar para otros.
Jan Hettich
3
Trabajó para mí ... Definitivamente vale la pena estar en la lista de verificación como primer paso antes de intentar soluciones más complejas.
Tony O'Hagan
44
Esto también me ayudó. Sabía que las superposiciones de íconos estaban vinculadas al explorerproceso, y con TortoiseSVN era posible simplemente matar y reiniciar el explorerproceso (no la ventana activa, sino la principal) para evitar reiniciar. Hice lo mismo para TortoiseGit, pero eso no fue suficiente. Un reinicio ayudó.
Eslavo
1
Leí todas las respuestas, incluida esta, y luego opté por reiniciar el Explorador de Windows (utilicé el enfoque Ctrl + Shift + Asc-then-restart-process mencionado en la respuesta de @ replicantspy ). ¡Funcionó para mí! Entonces, el +1 para esta respuesta es bastante justo. :) Tks!
Luiz Vieira
16

Simplemente agregue un espacio (o más si es necesario) a las opciones de Nombre de tortuga a estas direcciones regedit:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers

por ejemplo:

"1TortoiseNormal"

Debería cambiar a:

" 1TortoiseNormal"

después de que los rebooticonos de un sistema se muestren correctamente.

Amir Hossein Ghasemi
fuente
4

Primero instalé TortoiseSVN (1.9.5) y msysgit (2.11.0) en mi máquina con Windows 10 de 64 bits. Los iconos de TortoiseSVN se muestran bien.

Cuando instalé TortoiseGit (2.3.0.0) después de estos dos, los íconos no se mostraban.

lo comprobé HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers y todo se veía bien. Los íconos de la tortuga estaban en el top 10.

Lo que solía arreglar surgió en el problema # 692 de TortoiseGit en GitLab :

  • Abierto regedit.exe
    • Ir HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer
    • Agregue un nuevo valor de cadena "Max Cached Icons" con el valor "2000"

¡Explorador cerrado / reiniciado e iconos en pantalla!

icc97
fuente
1
Encontré que esta es la solución más fácil, rápida y mejor para mí (Windows 10).
timbo
3

Tuve este mismo problema hoy después de desinstalar TortoiseSVN. Reinicié y todavía no tuve suerte, así que entré en el Panel de control, desinstalé un programa y en el elemento TortoiseGit elegí 'Reparar' y todo volvió a la normalidad. Sospecho que toda la línea de aplicaciones Tortoise tiene algunas claves de registro compartidas o algo así.

Richard Edwards
fuente
3

También tuve mis iconos de shell de TortoiseGIT que dejaron de aparecer de repente, no recuerdo exactamente qué me llevó a eso, pero encontré esto y probé las cosas del registro cambiando 1TortioiseNormal a "1TortioiseNormal" y así sucesivamente. Probablemente sea algo bueno, no importa qué, pero las superposiciones de íconos aún no funcionaban.

Estoy demasiado ocupado para la respuesta general de "reiniciar la computadora", lo que eso me dice es "algunos procesos de servicio deben reiniciarse, pero nunca podrás encontrarlo, así que simplemente reinícialo". Nah

También uso TortoiseSVN y esas superposiciones de íconos todavía funcionaban para mí. Miré en la pestaña de procesos del administrador de tareas y vi que tenía algo llamado TSVNCache.exe ejecutándose. No hay signos de nada similar para git, así que por un momento fui a la pestaña de aplicaciones y presioné "Nueva tarea", ingresé TGITCache.exe y, efectivamente, ese proceso se activó. A partir de ahí, vuelva a los procesos, elimine explorer.exe, luego vuelva a las aplicaciones -> Nueva tarea nuevamente y encienda explorer.exe.

Esto ha funcionado para mí dos veces ahora cuando mis superposiciones de íconos de TortoiseGIT se han cerrado, por lo tanto, tal vez funcione para otra persona.

Arudlang
fuente
2

Lo que funcionó para mí fue desinstalar Google Drive de mi computadora. No estoy seguro de por qué todavía.

Darien Pardinas
fuente
Ver mis comentarios arriba. Hay un límite codificado de 15 superposiciones y Google Drive usa varias, al igual que Onedrive, Dropbox y otras. Torroise es uno de los peores que usa como 10 por sí solo, sin dejar casi nada para nada más. Al eliminar Google Drive, simplemente eliminó las teclas de registro de superposición dejando suficiente "libre" de las 15 para finalmente ver los iconos de Tortoise.
Collin Chaffin
2

Estoy de acuerdo con Chi Chan y me gustaría agregar esto como una respuesta complementaria.

Son los íconos de Dropbox Explorer. Aquí hay un script de registro para eliminarlos. ¡Guárdelo en algún lugar, porque volverán!

Tenga en cuenta que los valores también cambian de vez en cuando. Actualmente tienen 3 espacios antes del "DropboxExtXX", antes solo tenían uno.

Eliminar Dropbox Explorer Icons.reg

Windows Registry Editor Version 5.00

[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\   DropboxExt01]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\   DropboxExt02]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\   DropboxExt03]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\   DropboxExt04]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\   DropboxExt05]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\   DropboxExt06]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\   DropboxExt07]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\   DropboxExt08]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\   DropboxExt09]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\   DropboxExt10]
bytecode77
fuente
1

El problema con los espacios iniciales es que cada vez que reinicia, Dropbox agrega otro espacio a sus registros, y siempre estará un paso por delante de usted.

Así que he programado un script de Python encontrado en esta publicación (por Christoph Zwerschke) para que se ejecute cada vez que se inicia la computadora. También debe reiniciar el Explorer después de eso.

El .bat se verá así:

python iconOverlayFixer.py
taskkill /f /im explorer.exe 
start explorer.exe  

Y el script de Python:

#/usr/bin/python3

import os
import winreg as reg

# names of all overlay icons that shall be boosted:

boost = """
    Tortoise1Normal
    Tortoise2Modified
    Tortoise3Conflict
    Tortoise4Locked
    Tortoise5ReadOnly
    Tortoise6Deleted
    Tortoise7Added
    Tortoise8Ignored
    Tortoise9Unversioned
"""

boost = set(boost.split())

with reg.OpenKey(reg.HKEY_LOCAL_MACHINE,
        r'SOFTWARE\Microsoft\Windows\CurrentVersion'
        r'\Explorer\ShellIconOverlayIdentifiers') as base:

    names = set()
    renames = []
    i = 0
    while True:
        try:
            name = reg.EnumKey(base, i)
        except OSError:
            break
        core = name.strip()
        if core in names:
            print('Delete', repr(core))
            reg.DeleteKey(base, name)
        else:
            names.add(core)
            if core in boost:
                core = ' ' + core
            if core != name:
                renames.append((name, core))
        i += 1

    if renames:
        for old_name, new_name in renames:
            print('Rename', repr(old_name), 'to', repr(new_name))
            value = reg.QueryValue(base, old_name)
            reg.CreateKey(base, new_name)
            reg.SetValue(base, new_name, reg.REG_SZ, value)
            reg.DeleteKey(base, old_name)
    else:
        print('Nothing to rename')
mathiasfk
fuente
1

Lo que me funcionó para Windows 10 es

  1. desinstalar TortoiseGit
  2. limpieza de carpetas y registro
  3. instalándolo de nuevo
  4. reiniciar la computadora
  5. hacer una confirmación aleatoria incluso sin ver el icono rojo
romano
fuente