【问题标题】:How do I remove msysgit's right click menu options?如何删除 msysgit 的右键菜单选项?
【发布时间】:2011-01-28 10:06:39
【问题描述】:

这不是最好的编程问题,但让我们面对现实吧,服务器故障人员并不精通 git,所以我认为它更适合这些受众。

我想在我的 shell 中切换到 TortoiseGit 或 PortableGit,但我留下了这些烦人的上下文菜单选项。

如何让他们离开?我必须编写脚本来卸载它们吗?

【问题讨论】:

标签: git tortoisegit msysgit


【解决方案1】:

Windows 10 64 位上,您需要执行以下两项操作:


1.删除注册表项

HKEY_CLASSES_ROOT\Directory\background\shell\git_gui

HKEY_CLASSES_ROOT\Directory\background\shell\git_shell

HKEY_CLASSES_ROOT\Directory\Shell\git_gui

HKEY_CLASSES_ROOT\Directory\Shell\git_shell

为了方便或者如果您想自动删除(例如在 choco 升级后使用),您可以在 Powershell 中运行(以管理员身份运行):

New-PSDrive -Name HKCR -PSProvider Registry -Root HKEY_CLASSES_ROOT | Out-Null
Remove-Item -Path "HKCR:\Directory\shell\git_gui" -Recurse
Remove-Item -Path "HKCR:\Directory\shell\git_shell" -Recurse
Remove-Item -Path "HKCR:\Directory\Background\shell\git_gui" -Recurse
Remove-Item -Path "HKCR:\Directory\Background\shell\git_shell" -Recurse


2.注销 shell 扩展 dll 以删除其他菜单条目(GitExt 克隆...、GitExt 创建新存储库等):

regsvr32 /u "C:\Program Files (x86)\GitExtensions\GitExtensionsShellEx64.dll"

【讨论】:

    【解决方案2】:

    在 Windows 10 中,上述方法对我没有任何帮助。我找到的最佳解决方案是卸载应用程序并重新安装它,并在安装过程中小心取消选中 Windows 资源管理器集成

    【讨论】:

    • 我可以确认接受的答案适用于 Windows 10 x64。
    • +1 这是在我的一台 Windows 10 机器上唯一对我有用的东西。也就是说,接受的答案对另一个有效。
    • 此处相同 (Win10 x64)。必须卸载它并重新安装。
    • 这也是对我有用的。 (Win10 x64)。必须卸载它并重新安装。
    【解决方案3】:

    为了补充 dfkt 所说的内容,还有一个位置,用于库文件夹:

    HKEY_USERS\S-1-5-21-2901758233-4091616725-3820123586-1012\Software\Classes\LibraryFolder\background\shell\git_gui
    HKEY_USERS\S-1-5-21-2901758233-4091616725-3820123586-1012\Software\Classes\LibraryFolder\background\shell\git_shell
    

    HKEY_USERS 和 Software 之间的具体数字可能因人而异,因帐户而异,因此请确保它适合您。

    因此,修改后的完整注册表删除将是:

    Windows Registry Editor Version 5.00
    
    [-HKEY_CLASSES_ROOT\Directory\background\shell\git_gui]
    
    [-HKEY_CLASSES_ROOT\Directory\background\shell\git_shell]
    
    [-HKEY_CLASSES_ROOT\Directory\Shell\git_gui]
    
    [-HKEY_CLASSES_ROOT\Directory\Shell\git_shell]
    
    [-HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\background\shell\git_gui]
    
    [-HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\background\shell\git_shell]
    
    [-HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\shell\git_gui]
    
    [-HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\shell\git_shell]
    
    [-HKEY_USERS\S-1-5-21-2901758233-4091616725-3820123586-1012\Software\Classes\LibraryFolder\background\shell\git_gui]
    
    [-HKEY_USERS\S-1-5-21-2901758233-4091616725-3820123586-1012\Software\Classes\LibraryFolder\background\shell\git_shell]
    

    【讨论】:

      【解决方案4】:

      我遇到了类似的问题,上面所有的答案都对我不起作用,那么最后我在下面的步骤中找到了解决方案。

      第一步:在开始菜单中输入regedit

      第 2 步:运行注册表编辑器

      第 3 步:导航到HKEY_CURRENT_USER\SOFTWARE\Classes\Directory\Background\shell

      第四步:点击“shell”

      第 5 步:右键单击“Git Bash Here”并选择删除选项

      干杯

      【讨论】:

      • 这对我有用。很可能是因为我的 git 是为用户安装的,而不是系统范围的。
      【解决方案5】:

      从最近的版本开始,只有这个注册表删除 - 没有别的 - 在 Win8.1 上对我有用:

      Windows Registry Editor Version 5.00
      
      [-HKEY_CLASSES_ROOT\Directory\background\shell\git_gui]
      
      [-HKEY_CLASSES_ROOT\Directory\background\shell\git_shell]
      
      [-HKEY_CLASSES_ROOT\Directory\Shell\git_gui]
      
      [-HKEY_CLASSES_ROOT\Directory\Shell\git_shell]
      
      [-HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\background\shell\git_gui]
      
      [-HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\background\shell\git_shell]
      
      [-HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\shell\git_gui]
      
      [-HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\shell\git_shell]
      

      【讨论】:

      • 在 win 7 上的一个奇怪案例中,这也是唯一有效的解决方案。
      • 这在 Windows 7 上非常适合我,谢谢@dfkt!
      • 在 Win 10 中工作。
      • 我使用 Chocolatey 安装了 Git,因此进行了静默安装并默认启用了 shell 扩展。这就是我的解决方案。注意:我只能找到“HKEY_CLASSES_ROOT\Directory*”的注册键;其他的似乎不存在。
      • 在 win10(可能还有其他)上,您无需重新启动或重新登录即可反映更改
      【解决方案6】:

      64 位 Windows

      在 cmd.exe 窗口中,运行以下命令:

      cd "C:\Program Files (x86)\Git\git-cheetah" regsvr32 /u git_shell_ext64.dll

      32 位 Windows

      从 cmd.exe 窗口运行这些命令

      cd "C:\Program Files\Git\git-cheetah" regsvr32 /u git_shell_ext.dll

      Windows 10

      如果您使用的是 Windows 10 并且之前的方法不起作用,请尝试卸载该应用程序并重新安装它。但在安装过程中要小心取消选中 Windows 资源管理器集成

      【讨论】:

      • 文件是 git_shell_ext64.dll 对于像 Windows 7 这样的 64 位操作系统往往是
      • 对于较新版本的 GitExtentions,follow the instructions here
      • 感谢@TheScrumMeister 的旁注,不过,任何读者都应该记住 GitExtensions 不是 git-cheetah。
      • 我只需要作为 GIT 列出的单个菜单>>,它会扩展以提供当前在我的右键单击处理程序中的子菜单.. 我该怎么做??
      • 我在我的 Git 文件夹下找不到任何名称中带有“shell”的 .dll 文件。但是,从 regedit 中删除值确实对我有用。
      【解决方案7】:

      您还可以使用 CCleaner 禁用单个条目。

      【讨论】:

      • 即使在 ccleaner 中禁用上下文菜单选项后,上下文菜单选项仍然存在...
      • @hexicle 对我来说它在重新启动 explorer.exe 进程后工作
      • 请注意,CCleaner 曾经有一个后门,对我来说,这是一个永远存在的大问题
      【解决方案8】:

      当您安装 msysgit 时,有一个“Windows 资源管理器集成”选项,您可以取消选中以不显示它们。

      您可以重新运行安装程序并取消选中该选项,或者卸载并重新安装然后取消选中它。

      【讨论】:

      • 你想要什么,选框标签?
      • 不幸的是,它在安装时不是一个选项,所以我觉得我运气不好。
      • 我知道这是最新版本 1.7.0.2-preview20100309 上的一个选项。应该是第 4 个设置屏幕,就在选择安装目录之后。
      • @hasen 几乎不一样。他可能会在某个时候更新 msysgit,那么为什么要对注册表进行一些您可能会忘记的更改呢?
      • 如果不卸载,取消选中该选项会给您一个警告,提示您不要卸载 v 1.8.0 中的选项,仅供参考。这是答案后的 2 年,所以不要投反对票,因为当时可能不是这样。
      猜你喜欢
      • 2023-01-11
      • 2011-09-13
      • 1970-01-01
      • 1970-01-01
      • 2010-12-13
      • 2016-12-14
      • 2010-09-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多