如何删除msysgit的右键单击菜单选项?


346

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

我想在外壳程序中切换到TortoiseGit或PortableGit,但是剩下这些烦人的上下文菜单选项。

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


从OP中删除的答案将该网址引用为包含解决方案。
Halfer 2016年

Answers:


623

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资源管理器集成

在此处输入图片说明


9
对于像Windows 7这样的64位操作系统,文件是git_shell_ext64.dll
马特(Matt

2
对于较新版本的GitExtensions,请按照此处的说明进行操作
Meister

3
感谢旁注@TheScrumMeister,不过,任何读者也应该记住,GitExtensions不是git-cheetah。
JayC

2
我只需要列出为GIT >>的单个菜单,该菜单会展开以提供当前在我的右键单击处理程序中的子菜单。我该怎么办?
Shankar Regmi 2014年

1
我在Git文件夹下的名称中找不到带有“ shell”的任何.dll文件。但是,从regedit中删除价值确实对我有用。
Liggliluff

88

从最新版本开始,只有此注册表删除(没有其他功能)在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]

1
在胜利7的一个奇怪情况下,这也是唯一有效的解决方案。
Musa Haidari '16

在Windows 7上,这对我非常有用,谢谢@dfkt!
杰伊·泰勒

在Win 10中工作
。– Stanojkovic

1
我使用Chocolatey安装了Git,因此默认情况下进行了无提示安装并启用了Shell扩展。这是我的解决方案。注意:我只能找到“ HKEY_CLASSES_ROOT \ Directory *”的Reg键;其他似乎不存在。
Christopher Bull

在win10(也许还有其他)上,您无需重新启动或重新登录以反映更改
Kyle

39

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

在此处输入图片说明


1
即使在ccleaner中禁用了上下文菜单选项之后,上下文菜单选项仍然对我
有用

@hexicle对我来说,它在重新启动explorer.exe过程后起作用了
Vlad Sabev

20

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

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


7
您想要一个字幕标签吗?
亚历克斯·摩尔

不幸的是,在安装时这不是一个选择,所以我认为我不走运。
DevelopingChris

我知道这是最新版本1.7.0.2-preview20100309的一个选项。选择安装目录后,它应该是第四个设置屏幕。
亚历克斯·摩尔

@hasen几乎不一样。他可能会在某个时候更新msysgit,那么为什么用您可能会忘记的更改来破坏注册表?
Alex Moore 2010年

9
如果不卸载,则取消选中该选项会向您发出有关未卸载FYI 1.8.0版的警告。这是答案之后的两年,所以不要投反对票,因为那时可能不是那样。
CAD笨拙

9

在Windows 10中,以上所有内容对我而言都无效。我发现最好的解决方案是卸载应用程序并重新安装,在安装过程中请务必取消选中Windows资源管理器集成

删除git删除单击菜单选项


2
我可以确认接受的答案可以在Windows 10 x64上使用。
ZorleQ

+1这是在我的一台Windows 10计算机上唯一对我有用的东西。就是说,被接受的答案在另一个上起作用。
user1843640

1
同样在这里(Win10 x64)。必须将其卸载并重新安装。
AlbertoFdzM

这也是对我有用的。(Win10 x64)。必须卸载并重新安装。
塔瓦尼

7

我遇到了类似的问题,以上所有答案均对我不起作用,然后终于在以下步骤中找到了解决方案。

第1步:类型regedit在开始菜单

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

步骤3:浏览至HKEY_CURRENT_USER\SOFTWARE\Classes\Directory\Background\shell

步骤4:点击“外壳”

第5步:右键单击“此处Git Bash”,然后选择删除选项

干杯


1
这对我有用。最有可能是因为我的git是为用户安装的,而不是系统范围的。
rafee

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和软件之间的特定数字可能因人而异,因帐户而异,因此请确保它适合您。

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

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]

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"
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.