乌龟SVN文件夹图标未显示

9

我一直在使用tortoise遇到了问题。

当我检出代码时,文件夹上通常显示绿色或红色图标的tortoise图标没有显示。有解决方法吗?

先行感谢。

7个回答

21

1 - 检查你的TortoiseSVN设置是否正确

右键单击一个SVN文件夹 >> TortoiseSVN >> Settings

选择图标叠加:
1. Status Cache 默认设置
2. Drive Types: (选择)Network Drive, Fixed Drive

2 - 查看Windows中是否安装了过多的图标集

Windows最多允许11个图标集,如果其他程序如DropBox已经安装,则会占据其中的位置

由于我们要操作注册表,请务必小心,除非你确定可以清楚地编辑!

  1. 运行regedit
  2. 导航到:
    HKEY_LOCAL_MACHINE/SOFTWARE/MICROSOFT/WINDOWS/EXPLORER/ShellIconOverlayIdentifiers
  3. 如果有超过11个文件夹,则表示你安装了过多的图标集。
    :: 在我的情况下,是因为DropBox - 文件夹名称为("DropboxExt1","DropboxExt2"),而我的Tortoise则命名为(1TortoiseNormal,2TortoiseModified)
    --问题在于Windows按照字母数字顺序来启用它们('"'比'1'在字母数字堆栈中先出现)

    解决方案:如果你和我遇到了同样的问题,你可以简单地重命名Dropbox注册表列表。我将我的Dropbox列表从("'DropboxExt1'")重命名为('X"DropboxExt1"'),只需在注册表的开头添加一个'X'即可。
    >重新启动你的机器以查看注册表列表生效。

3
看起来太空战争已经开始了 :) Dropbox 使用 1 个空格前缀,现在 Google Drive 使用了 2 个空格,所以我不得不将我最喜爱的 TortoiseSVN 图标提升到 3 个空格。 - si618
@si618 最糟糕的是,任何普通用户都不会想到在安装新软件时他们的图标会消失。 - Tim Cason
1
@si618: 最近我的Tortoise Shell叠加层突然消失了,于是我查看了注册表,发现我之前已经添加了两个额外的空格来抵消Dropbox的一个额外空格,但最新的Dropbox更新显然将其更改为三个额外的空格。 我刚刚将所有的Tortoise叠加层重命名为包含四个空格前缀的名称,现在它又可以正常工作了。我想知道在未来几年中我们会有多少个空格。 - Kaiserludi
@si618 - 可能是来自Dropbox或其他图标服务器的更新已经被推到了前面--由于我无法看到你的注册表(也不想看),很难知道。如果您感到舒适,请尝试卸载一些具有图标集的其他程序,看看是否会出现任何问题--然后重新安装这些程序。干杯! - Tim Cason
非常感谢。ShellIconOverlayIdentifiers 的位置是 "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\ShellIconOverlayIdentifiers"。 - Karthikeyan P

13

如果您从1.6.8或1.6.9进行了升级,请尝试修复安装。只需重新启动TortoisSVN安装程序并选择“修复”。请注意,升级TortoiseSVN时存在覆盖图标的已知问题(请参见此博客文章)。


我已经卸载了该应用程序,重新启动计算机后再次安装它,现在它可以正常工作了...谢谢。 - AutoMEta
1
我在使用Windows 8.1和Tortoise SVN 1.8.1时遇到了同样的问题。从TSVN 1.8.1更新到1.8.4并没有帮助,我仍然遇到了这个问题。一旦安装了1.8.4版本,重新运行安装程序并选择修复选项即可解决我的问题。 - icc97
实际上是重新启动解决了这个问题,(暂时的)。请参见https://dev59.com/rFDTa4cB1Zd3GeqPJ4rP#26308182。 - Chris Noe

4

如果您将代码检出到网络或可移动驱动器上,您需要设置一些偏好设置才能看到图标。


设置 -> 外观 -> 图标叠加 - Camilo Martin

1

1
你可以前往 TortoiseSVN>设置>图标叠加>状态缓存
如果选择了 default,则从默认更改为 shell。如果选择了 shell,则将其从 shell 更改为 default。这应该会解决问题。

0

也许这取决于您的平台?如果您想在Windows资源管理器中使用TortoiseSVN覆盖图标,因为Windows资源管理器在Windows 64位上是64位的,所以您需要安装64位的TortoiseSVN。

请参见http://tortoisesvn.net/faq.html#nomenus

如果您使用XP或Vista 64位,请确保已安装x64版本的TortoiseSVN。由于这些操作系统版本上的资源管理器是64位应用程序,因此无法加载32位版本的TortoiseSVN。

但是,在这些操作系统版本上仍然可以保留32位版本的TortoiseSVN:它将显示在这些应用程序的32位应用程序文件打开/保存对话框中。


32位应用程序不能在64位Windows上运行?这对我来说是个新闻。 - Camilo Martin
1
@CamiloMartin 抱歉,我的回答在这一点上不够清晰:如果您想要在Windows资源管理器或通常的Windows shell中使用TortoiseSVN覆盖图标,则需要64位的TortoiseSVN,因为Windows资源管理器在Windows 64位上是64位的。当然,您可以在Windows 64位上运行32位的TortoiseSVN,但是那样您就无法使用作为TortoiseSVN主要用户界面的shell扩展。 - splash
@CamiloMartin 如果您想在 Windows 64 位上通过 Windows shell/Explorer 使用 TortoiseSVN,则需要使用 64 位版本:http://tortoisesvn.net/faq.html#nomenus - splash
啊,我以为资源管理器可以加载32位的Shell扩展。我的错 :) - Camilo Martin

-1
在最近的TortoiseSVN版本中,旧的_svn文件夹已经被弃用。更好的做法是将它们重命名为.svn。
attrib -h _svn
rename _svn .svn
attrib +h .svn

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接