TortoiseGit не показывает значки


Я использую TortoiseGit уже почти целый год. Он работал очень хорошо для меня до вчерашнего дня, когда я столкнулся с проблемой. Я удалял папку, когда Проводник Windows вроде бы разбился на меня (он висел на "обнаружении элементов") в течение часа, а затем я перезапустил систему.

С тех пор (а я не конечно, если описанный инцидент имеет какое-либо отношение к нему), TortoiseGit перестал показывать наложение значков в проводнике. Поведение, однако, не как любой из других, кто разместил вопросы здесь, потому что:

на open file диалог всех программ, значки все еще существуют (!).

вот список вещей, которые я пробовал:

  1. я изменил настройки TortoiseGit, чтобы показать разные значки.
  2. TortoiseGit переустановить (удалить, перезагрузить, установить, перезагрузить).
  3. я удалил все оверлеи значков, начиная с "Tortoise" в HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionExplorer ShellIconOverlayIdentifiers, потом удалил TortoiseGit, перезагрузил компьютер и переустановил TortoiseGit.

Edit:

Я попытался создать нового пользователя на своем компьютере, и у нового пользователя есть значки, которые работают нормально. Теперь я еще больше запутался.

пока ничего не помогло. Есть идеи?

13 107

13 ответов:

у меня была та же проблема, и я получил его для работы, следуя инструкциям с форума. То, что я сделал, было это (скопировано):

я найду решение :) Обертывание с "" все черепашьи ключи под HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers

on 1TortoiseNormal и т. д... Я понял проблему, видя, как Dropbox и он работал regedit там был знак ("") в Dropbox, но не черепаха. Поэтому я добавил знаки, закрыть проводник.exe и хоп это хорошо :)

так что я сделал переименовать ключ 1TortioiseNormal до "1TortioiseNormal" etc. Я понятия не имею, почему обертывание его в двойную кавычку заставляет его работать снова.

оригинальный форум ушел, но хорошее резюме поставляется в комментариях.

Windows разрешает только до 11 идентификаторов наложения значков, расположенных в алфавитно - цифровом порядке-если их больше 11, эти значки не будут отображаться.

в командной строке DOS можно выполнить следующую команду:

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

затем откройте файл C:\icons.txt. Пропустите первые две строки, и если 1TortoiseNormal и другие *Tortoise* значения не находятся в верхних 11 значениях, их наложение значков не будет показано. Решение предоставлено @Chi Chan это просто простой способ сделать 1TortoiseNormal ранг выше при заказе среди всех наложений, вы также можете переименовать значения, добавив пробел(ы) перед 1TortoiseNormal, т. е.

" 1TortoiseNormal"

чтобы сделать их более высокий ранг.

обновление: для Windows 8 предел наложения значков составляет 15.

Шаги Решения Windows 10;

  1. открываем regedit

путь :

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

  1. удалить/удалить все ключи SkyDrive / OneDrive. Вам может понадобиться сменить ключи по одному и дают пользователю полный контроль если вы получаете сообщение об ошибке при попытке удалить ключи.

  2. нажмите Ctrl + Shift+Esc и перезагрузите "Проводник Windows" (при необходимости перезагрузите компьютер)

  3. все значки наложения git / svn теперь видны !

прежде чем сходить с ума, просто попробуйте перезагрузить! Это сработало для меня;)

просто добавьте один пробел (или больше, если это необходимо) к первому имени параметров черепахи к этому regedit addersses:

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

например:

"1TortoiseNormal"

надо заменить на:

" 1TortoiseNormal"

через систему reboot иконки показывает currectly.

У меня была такая же проблема сегодня после удаления TortoiseSVN. Я перезагрузился и все еще не повезло, поэтому я просто вошел в Панель управления, удалите программу и на элементе TortoiseGit я выбрал "Repair" и все возвращается на круги своя. Я подозреваю, что все приложения из линейки Tortoise имеют некоторые общие ключи реестра или что-то в этом роде.

У меня также были значки оболочки TortoiseGIT, которые внезапно перестали отображаться, я не помню точно, что привело к этому, но я нашел это и попробовал материал реестра, изменив 1TortioiseNormal на "1TortioiseNormal" и так далее. Это, вероятно, хорошая вещь, чтобы сделать независимо от того, что, но значок накладки все еще не работает.

Я слишком занят для общего ответа "перезагрузите компьютер", что говорит мне: "какой-то процесс обслуживания должен быть перезапущен, но вы никогда не сможете его найти так что просто перезагрузите." Нет.

Я также использую TortoiseSVN, и эти значки все еще работали для меня. Я посмотрел на вкладке "Процессы" диспетчера задач и увидел, что у меня есть что-то под названием TSVNCache.exe выполняется. Никаких признаков чего-либо подобного для git, поэтому по прихоти я перешел на вкладку приложений и нажал "новая задача", вошел в TGITCache.exe и, конечно же, этот процесс загорелся. Оттуда вернитесь к процессам, убейте проводника.exe, затем вернитесь к приложениям - > новая задача снова и запустите исследователь.исполняемый.

Это сработало для меня дважды, когда мои накладки значков TortoiseGIT прекратились, поэтому, возможно, это сработает для кого-то другого.

Я установил TortoiseSVN (1.9.5) и msysgit (2.11.0) сначала на моей 64-разрядной машине Windows 10. Значки TortoiseSVN отображаются нормально.

когда я установил TortoiseGit (2.3.0.0)после этих двух значков не будет отображаться.

проверил HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers и все выглядело нормально. Значки черепахи были в топ-10.

то, что я использовал для исправления, было поднято в TortoiseGit выпуск #692 на GitLab:

  • открыть regedit.exe
    • на HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer
    • добавить новое строковое значение "Max Cached Icons" со значением "2000"

закрыть/перезапустить Проводник и значки!

Что сработало для меня, так это удалить Google Диск с моего компьютера. Пока не знаю почему.

поэтому я запланировал скрипт python, найденный на этом post (Кристоф Zwerschke) выполнять каждый раз при загрузке компьютера. Вы также должны перезапустить Проводник после этого.

The .летучая мышь будет выглядеть так:

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

и скрипт 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')

то, что работает для меня для Windows 10 является

  1. удаление TortoiseGit
  2. чистка папок и реестра
  3. установить его еще раз
  4. перезагрузка компьютера
  5. делая случайные фиксации даже не видя красный значок

Я согласен с Чи Чан, и я хотел бы добавить это в качестве дополнительного ответа.

это иконки Dropbox Explorer. Вот сценарий реестра, чтобы удалить их. Сохраните его где-нибудь, потому что они вернутся!

обратите внимание, что значения меняются время от времени, тоже. В настоящее время у них есть 3 пробела перед "DropboxExtXX", раньше у них был только один.

Удалить Иконки Dropbox Explorer.Рег

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]

ну, я полагаю, я пропустил очевидный шаг...

В Настройках TortoiseGit > Наложение Значков:

Make sure to add your projects folder to the "Include Paths" box.