TortoiseGit không hiển thị lớp phủ biểu tượng


133

Tôi đã sử dụng TortoiseGitgần một năm nay. Nó đã làm việc rất tốt cho tôi cho đến ngày hôm qua, khi tôi gặp phải một vấn đề. Tôi đang xóa một thư mục khi Windows Explorer gặp sự cố với tôi (nó bị treo trong "khám phá các mục") trong hơn một giờ, sau đó tôi khởi động lại hệ thống.

Kể từ thời điểm đó (và tôi không chắc liệu sự cố được mô tả có liên quan gì đến nó không), TortoiseGit đã ngừng hiển thị lớp phủ biểu tượng trong trình thám hiểm. Tuy nhiên, hành vi này không giống như bất kỳ ai khác đã đăng câu hỏi ở đây, bởi vì:

Trong đoạn hội open filethoại của tất cả các chương trình, các biểu tượng vẫn tồn tại (!).

Dưới đây là danh sách những điều tôi đã thử:

  1. Tôi đã thay đổi cài đặt TortoiseGit để hiển thị các biểu tượng khác nhau.
  2. Cài đặt lại TortoiseGit (gỡ cài đặt, khởi động lại, cài đặt, khởi động lại).
  3. Tôi đã xóa tất cả các lớp phủ biểu tượng bắt đầu bằng "Rùa" HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer \ShellIconOverlayIdentifiers, sau đó gỡ cài đặt TortoiseGit, khởi động lại máy tính và cài đặt lại TortoiseGit.

Biên tập:

Tôi đã cố gắng tạo một người dùng mới trên máy tính của mình và người dùng mới có lớp phủ biểu tượng hoạt động tốt. Tôi bây giờ thậm chí còn bối rối hơn.

Không có gì giúp được cho đến nay. Có ý kiến ​​gì không?


Bạn đã cài đặt TortoiseSVN chưa?
mozello

@mozello Không, chỉ TortoiseGit
5xum

5
Điều tương tự đã xảy ra với tôi. Của tôi xảy ra vì tôi đã cài đặt "Dropbox" trên máy của mình. Dropbox cũng sử dụng IconOverlays và chúng xếp hạng cao hơn trong danh sách so với TortoiseGit. Và vì bạn chỉ có thể có 15, nên bạn có thể không thấy họ vì lý do đó. Của tôi bắt đầu trong danh sách từ 19-28, vì vậy lý do của tôi không nhìn thấy chúng. Sử dụng đề xuất của D TRANG dưới đây để xem vị trí Xếp hạng của bạn trong danh sách.
Chad


@MrTux Tôi tò mò muốn biết cách bạn xem xét một câu hỏi được hỏi vào ngày 6 tháng 8 năm 2014 như là một bản sao của câu hỏi đã được hỏi vào ngày 11 tháng 1 năm 2017 (tức là hơn 2 năm sau ).
5xum

Câu trả lời:


130

Tôi đã có cùng một vấn đề và tôi đã làm cho nó hoạt động bằng cách làm theo hướng dẫn từ một diễn đàn. Những gì tôi đã làm là điều này (sao chép):

Tôi tìm giải pháp :) Bao bọc với ""tất cả các phím rùa bên dưới HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers

trên 1TortoiseNormalvà vv ... Tôi hiểu được vấn đề, nhìn thấy như Dropbox và nó làm việc regedit có dấu ( "") để Dropbox nhưng không phải rùa. Vì vậy, tôi đã thêm các dấu hiệu, đóng explorer.exe và hy vọng nó là tốt :)

Vì vậy, những gì tôi đã làm là đổi tên khóa 1TortoiseNormalthành "1TortoiseNormal"vv. Tôi không biết tại sao việc bọc nó bên trong một trích dẫn kép làm cho nó hoạt động trở lại.

Diễn đàn ban đầu đã biến mất, nhưng một bản tóm tắt tốt được cung cấp trong các ý kiến.


33
Nó có lẽ là một vấn đề sắp xếp. Ký tự trích dẫn kép là một trong những ký tự có thể in đầu tiên, vì vậy "DropboxExt1" xuất hiện trước 1TortoirN normal, nhưng "1TortoirN normal" xuất hiện trước "DropboxExt1". Tôi cũng đã thử xóa trích dẫn kép khỏi các khóa của Dropbox và nó đã hoạt động.
dùng34814

5
Đã học được điều gì đó từ các mục của Skype. Thay vì gói nó xung quanh "" (dấu ngoặc kép) chỉ cần thêm khoảng trắng ở đầu mục. Vì vậy, các mục nhập sẽ là <space-char> 1TortoirN normal và vv ... Cuối cùng, đây là vấn đề sắp xếp :) có vẻ như vậy.
Pratham

5
Tôi cũng gặp vấn đề tương tự sau khi cài đặt dropbox. Tôi đã tìm thấy lý do / cách giải quyết trong blog này, tuy nhiên sau khi đổi tên các phím rùa, chúng dường như không dùng đến đầu danh sách .. Tôi phải mất một lúc để nhận ra rằng các phím dropbox có khoảng trống ở phía trước .. vì vậy tôi đã đổi tên những con rùa thành <space> 1TortoirN normal, v.v. BLOG: blog.garethjmsaunders.co.uk/2015/03/22/ trên
dùng1420372

10
@CodyStott Hóa ra MS hiện cũng đang làm như vậy ... Các biểu tượng OneDrive cũng bắt đầu bằng một khoảng trắng ... Trong 10 năm sau khi tất cả các công ty tìm ra thủ thuật này, tất cả các tên chính sẽ bắt đầu với hàng tá khoảng trắng ...: p
Stijn de Witt

30
CẬP NHẬT: Dropbox bây giờ cũng thêm 3 khoảng trắng ở phía trước ... MS vui lòng lưu ý (bạn cũng đã làm như OneDrive đang sử dụng thủ thuật này) và thực hiện hành động . Điều này hoàn toàn hút. Và những gì tối đa với biểu tượng 11/15 này dù sao? Đó là năm 2017?!? Tôi chưa cần đại tu giao diện người dùng khác ... Tôi cần những thứ như thế này để được sửa trong vòng dưới 2 thập kỷ!
Stijn de Witt

102

Windows sẽ chỉ cho phép tối đa 11 số nhận dạng lớp phủ biểu tượng, được sắp xếp theo thứ tự chữ và số - nếu có nhiều hơn 11, các biểu tượng này sẽ không được hiển thị.

Bạn có thể chạy lệnh sau trong dấu nhắc DOS:

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

Sau đó mở tệp C:\icons.txt. Bỏ qua hai dòng đầu tiên và nếu 1TortoiseNormalvà các *Tortoise*giá trị khác không nằm trong 11 giá trị hàng đầu, lớp phủ biểu tượng của chúng sẽ không được hiển thị. Giải pháp được cung cấp bởi @Chi Chan chỉ là một cách đơn giản để 1TortoiseNormaltăng thứ hạng cao hơn khi được sắp xếp giữa tất cả các lớp phủ, bạn cũng có thể đổi tên các giá trị bằng cách thêm (các) khoảng trắng trước 1TortoiseNormal, nghĩa là,

" 1TortoiseNormal"

để làm cho họ xếp hạng cao hơn.

cập nhật: đối với Windows 8, giới hạn của lớp phủ biểu tượng là 15.


35
CƯỜI LỚN. Vì vậy, tôi mới nâng cấp lên Windows 10 và các biểu tượng TortoiseGit của tôi bị thiếu nên tôi đã tìm kiếm và tìm thấy chủ đề này ... Hóa ra Microsoft có thể cũng đọc chủ đề này vì các biểu tượng OneDrive bắt đầu có khoảng trắng theo mặc định !! Thật ngớ ngẩn khi Microsoft sẽ dùng đến điều đó ... thay vì chỉ xây dựng một màn hình cho phép chúng tôi định cấu hình thứ tự / mức độ ưu tiên của các chú thích biểu tượng từ trong cài đặt Windows.
Stijn de Witt

20
@StijndeWitt GoogleDrive và TortoiseSVN / Git dường như đã tăng tiền cược và thêm 2 khoảng trắng. Bây giờ chúng ta chính thức tham gia một cuộc đua vào vũ trụ ...
icc97

15
@ icc97 LOL @ 'cuộc đua không gian'. Nhưng DropBox đi trước một bước so với những người nghiệp dư này ... họ thêm 3 khoảng trắng: [....\ DropboxExt01](chỉnh sửa: SO thu gọn chúng thành 1 dường như ...)
Stijn de Witt

8
GHI CHÚ!! Khởi động lại Windows Explorer để các biểu tượng hiển thị. Nhấn Ctrl + Shift + Esc và khởi động lại "Windows Explorer" (Tùy chọn khởi động lại máy tính)
PhillipPDX

7
Tôi cũng chỉ nhận xét ở trên nhưng muốn thêm vào đây rằng tất cả các nhà cung cấp điện toán đám mây lớn (onedrive, dropbox, google drive) bây giờ NĂNG ĐỘNG đọc danh sách và sẽ TỰ ĐỘNG QUẢNG CÁO và tạo khoảng trống để "chiến thắng" cuộc chiến .... cho đến lần tiếp theo cập nhật và làm tương tự. Của tôi bây giờ có nghĩa đen tất cả ít nhất FIVE hàng đầu !! Ngoài ra, đó là 15 từ Vista trở lên.
Collin Chaffin

40

Các bước giải pháp của Windows 10;

  1. Mở regedit

Con đường :

HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Explorer \ ShellIconOverlayIdentifier

  1. Xóa / xóa tất cả các khóa SkyDrive / OneDrive. Bạn có thể cần sở hữu từng phím một và cung cấp cho người dùng toàn quyền kiểm soát nếu bạn gặp lỗi trong khi cố gắng xóa các khóa.

  2. Nhấn Ctrl + Shift + Esc và khởi động lại "Windows Explorer" (Tùy chọn khởi động lại máy tính)

  3. Tất cả các biểu tượng lớp phủ git / svn hiện có thể nhìn thấy!


Điều này làm việc cho tôi. Dường như có giới hạn về số lượng lớp phủ biểu tượng được phép trên windows explorer.
Yodacheese

6
Vì bất kỳ lý do gì, tôi không thể xóa các khóa OneDrive. Tôi vừa thêm ba khoảng trắng vào đầu các phím Rùa, khởi động lại và nó hoạt động trở lại.
NickH

1
OneDrive sẽ đặt lại các phím trong lần tiếp theo bạn đăng nhập lại.
Mike Lowery

2
Thay vì xóa các khóa hiện có, bạn chỉ cần thêm hai (hoặc nhiều) khoảng trống trước tất cả các phím Rùa . Sẽ có tác dụng tương tự - và cho phép bạn tham gia cuộc đua vào vũ trụ!
Corpus Gigantus

28

Trước khi đi hạt, chỉ cần thử khởi động lại! Nó làm việc cho tôi;)


8
Thành thật mà nói, bạn có thực sự nghĩ rằng tôi đã không thử điều đó? Trên thực tế, tôi đã viết rằng tôi đã khởi động lại máy tính của mình ở bước 2.
5xum

14
Việc bỏ phiếu là không chính đáng. Câu trả lời của tôi là vì lợi ích của những người khác đã đến trang này như tôi đã làm, khi tôi gặp vấn đề. Tôi đã phải lãng phí 1/2 giờ để cố gắng tìm ra vấn đề là gì, trước khi khởi động lại PC của mình. Tôi đánh giá cao rằng điều này không làm việc cho bạn, nhưng nó có thể làm việc cho những người khác.
Jan Hettich

3
Làm việc cho tôi ... Nó chắc chắn có giá trị trong danh sách kiểm tra là bước đầu tiên trước khi thử các giải pháp phức tạp hơn.
Tony O'Hagan

4
Điều này cũng giúp tôi. Tôi biết các lớp phủ biểu tượng được gắn với explorerquá trình và với TortoiseSVN, có thể chỉ cần giết và khởi động lại explorerquá trình (không phải cửa sổ hoạt động, mà là cửa sổ chính) để tránh khởi động lại. Tôi cũng làm như vậy với TortoiseGit, nhưng thế vẫn chưa đủ. Một khởi động lại đã giúp.
Slav

1
Tôi đã đọc tất cả các câu trả lời, bao gồm cả câu trả lời này, và sau đó chọn chỉ khởi động lại Windows Explorer (Tôi đã sử dụng phương pháp tiếp cận Ctrl + Shift + Asc-then-restart-process được đề cập tại câu trả lời của @ copyantspy ). Nó làm việc cho tôi! Vì vậy, +1 cho câu trả lời này là khá công bằng. :) Tks!
Luiz Vieira

16

Chỉ cần thêm một Dấu cách (hoặc nhiều hơn nếu cần) vào tùy chọn Tên Rùa đầu tiên cho các trình bổ sung regedit này:

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

ví dụ:

"1TortoiseNormal"

Nên đổi thành:

" 1TortoiseNormal"

sau khi một rebootbiểu tượng hệ thống hiển thị hiện tại.


4

Tôi đã cài đặt TortoiseSVN (1.9.5) và msysgit (2.11.0) trên máy Windows 10 64 bit của mình. Biểu tượng TortoiseSVN hiển thị tốt.

Khi tôi cài đặt TortoiseGit (2.3.0.0) sau hai biểu tượng này sẽ không hiển thị.

Tôi đã kiểm tra HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiersvà tất cả đều ổn. Các biểu tượng rùa nằm trong top 10.

Những gì tôi đã sử dụng để khắc phục đã được nêu ra trong vấn đề TortoiseGit # 692 trên GitLab :

  • Mở regedit.exe
    • Đi đến HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer
    • Thêm một giá trị chuỗi mới "Biểu tượng được lưu tối đa" với giá trị "2000"

đóng / khởi động lại explorer và biểu tượng hiển thị!


1
Tôi thấy đây là giải pháp dễ nhất, nhanh nhất và tốt nhất cho tôi (Windows 10).
timbo

3

Tôi đã gặp vấn đề tương tự ngày hôm nay sau khi gỡ cài đặt TortoiseSVN. Tôi đã khởi động lại và vẫn không gặp may, vì vậy tôi mới vào Bảng điều khiển, Gỡ cài đặt Chương trình và trên mục TortoiseGit tôi đã chọn 'Sửa chữa' và mọi thứ trở lại bình thường. Tôi nghi ngờ rằng tất cả các dòng ứng dụng Rùa có một số khóa đăng ký được chia sẻ hoặc một cái gì đó.


3

Tôi cũng có các biểu tượng shell TortoiseGIT của mình đột ngột hiển thị, tôi không nhớ chính xác điều gì đã dẫn đến nó nhưng tôi đã tìm thấy điều này và đã thử công cụ đăng ký thay đổi 1TortioiseN normal thành "1TortioiseN normal", v.v. Đó có lẽ là một điều tốt để làm bất kể điều gì nhưng lớp phủ biểu tượng vẫn không hoạt động.

Tôi quá bận rộn với câu trả lời "khởi động lại máy tính", điều tôi nói là "một số quy trình dịch vụ cần được khởi động lại nhưng bạn sẽ không bao giờ có thể tìm thấy nó nên chỉ cần khởi động lại." Không

Tôi cũng sử dụng TortoiseSVN và các lớp phủ biểu tượng đó vẫn hoạt động với tôi. Tôi đã xem trong tab quy trình của trình quản lý tác vụ và thấy tôi có một thứ gọi là TSVNCache.exe đang chạy. Không có dấu hiệu của bất cứ điều gì tương tự đối với git, vì vậy, trong một ý thích bất chợt, tôi đã đi đến tab ứng dụng và nhấn "Nhiệm vụ mới", nhập TGITCache.exe và chắc chắn rằng quá trình đó đã được kích hoạt. Từ đó quay trở lại các quy trình, tiêu diệt explorer.exe, sau đó quay lại các ứng dụng -> Nhiệm vụ mới một lần nữa và khởi động explorer.exe.

Điều này đã làm việc cho tôi hai lần bây giờ khi lớp phủ biểu tượng TortoiseGIT của tôi đã thoát, vì vậy, có thể nó sẽ hoạt động cho người khác.


2

Điều làm việc cho tôi là gỡ cài đặt Google Drive khỏi máy tính của tôi. Không chắc tại sao.


Xem ý kiến ​​của tôi ở trên. Có giới hạn mã hóa cứng của 15 lớp phủ và Google Drive sử dụng một số lớp như Onedrive, dropbox và các lớp khác. Torroise là một trong những điều tồi tệ hơn khi sử dụng như 10 tất cả, gần như không để lại bất cứ thứ gì khác. Bằng cách xóa Google Drive, bạn chỉ cần xóa các phím reg lớp phủ để lại đủ "miễn phí" trong số 15 để cuối cùng thấy các biểu tượng Rùa.
Collin Chaffin

2

Tôi đồng ý với Chi Chan và tôi muốn thêm câu này như một câu trả lời bổ sung.

Đó là biểu tượng Dropbox Explorer. Đây là một kịch bản đăng ký để loại bỏ chúng. Lưu nó ở đâu đó, bởi vì họ sẽ quay trở lại!

Lưu ý rằng các giá trị cũng thay đổi theo thời gian. Hiện tại họ có 3 khoảng trắng trước "DropboxExtXX", trước khi họ chỉ có một khoảng trống.

Xóa biểu tượng Dropbox Explorer.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]

1

Vấn đề với các không gian hàng đầu là mỗi khi bạn khởi động lại, Dropbox sẽ thêm một không gian khác vào các đăng ký của nó và sẽ luôn đi trước bạn một bước.

Vì vậy, tôi đã lên lịch cho một kịch bản python được tìm thấy trên bài đăng này (bởi Christoph Zwerschke) để thực thi mỗi khi máy tính khởi động. Bạn cũng phải khởi động lại Explorer sau đó.

.Br sẽ trông như:

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

Và kịch bản 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')

1

Những gì làm việc cho tôi cho Windows 10 là

  1. gỡ cài đặt TortoiseGit
  2. làm sạch thư mục và đăng ký
  3. cài đặt lại một lần nữa
  4. khởi động lại máy tính
  5. thực hiện cam kết ngẫu nhiên thậm chí không nhìn thấy biểu tượng màu đỏ
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.