Como removo as opções de menu do botão direito do msysgit?


346

Esta não é a melhor questão de programação, mas vamos encarar a questão: os caras com falha no servidor não são bem versados ​​no git, então acho que é mais voltado para esse público.

Quero mudar para o TortoiseGit, ou PortableGit no meu shell, mas fiquei com essas opções irritantes do menu de contexto.

Como faço para que eles desapareçam? Preciso escrever um script para desinstalá-los?


Uma resposta excluída do OP referenciou esse URL como contendo uma solução.
— halfer

Respostas:


623

Windows de 64 bits

Em uma janela do cmd.exe, execute estes comandos:

cd "C: \ Arquivos de Programas (x86) \ Git \ git-cheetah"
regsvr32 / u git_shell_ext64.dll

Windows de 32 bits

Em uma janela do cmd.exe, execute estes comandos

cd "C: \ Arquivos de Programas \ Git \ git-cheetah"
regsvr32 / u git_shell_ext.dll

Windows 10

Se você estiver no Windows 10 e os métodos anteriores não funcionarem, tente desinstalar o aplicativo e reinstalá-lo. Mas tenha cuidado durante o processo de instalação, desmarcando a integração do Windows Explorer

insira a descrição da imagem aqui


9
Arquivo é git_shell_ext64.dll para um SO de 64 bits, como o Windows 7 tende a ser
— Matt

2
Para versões mais recentes do GitExtentions, siga as instruções aqui
— The Scrum Meister

3
Obrigado pela observação, @TheScrumMeister, embora qualquer leitor disso também deva se lembrar de que GitExtensions não é um git-cheetah.
— JayC

2
Eu só preciso de um menu único listado como GIT >>, que se expande para fornecer o menu filho que está atualmente no meu manipulador de botão direito do mouse .. como posso fazer isso?
— Shankar Regmi

11
Não consigo encontrar nenhum arquivo .dll com "shell" no nome na minha pasta Git. No entanto, remover o valor do regedit funcionou para mim.
— Liggliluff

88

Somente essa remoção do registro - nada mais - funcionou para mim no Win8.1, nas versões recentes:

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]

11
Em um caso estranho na vitória 7, também esta foi a única solução que funcionou.
— Musa Haidari 30/03

Isso funcionou muito bem para mim no Windows 7, obrigado @dfkt!
— Jay Taylor

Funciona no Windows 10.
— Stanojkovic

11
Instalei o Git usando o Chocolatey; portanto, ocorreu uma instalação silenciosa e ativei as extensões do shell por padrão. Esta foi a solução para mim. Nota: Eu só consegui encontrar as chaves Reg para "HKEY_CLASSES_ROOT \ Directory *"; os outros não pareciam existir.
— 9309 Christopher Bull

No win10 (e talvez outros), você não precisa reiniciar ou re-login para alterações para refletir
— Kyle

39

Você também pode desativar entradas únicas usando o CCleaner.

insira a descrição da imagem aqui


11
Mesmo depois de desativar as opções de menu de contexto em ccleaner, as opções do menu de contexto ainda estão lá para mim ...
— hexicle

@hexicle para mim funcionou após o reinício do explorer.exeprocesso
— Vlad Sabev

20

Quando você instala o msysgit, existe uma opção para "Integração com o Windows Explorer" que você desmarca para não aparecer.

Você pode executar novamente a instalação e desmarcar a opção ou desinstalar e reinstalar e desmarcar a opção.


7
O que você gostaria, uma marca de letreiro?
— Alex Moore

infelizmente isso não era uma opção quando foi instalado, então acho que estou sem sorte.
— DevelopingChris

Eu sei que é uma opção na versão mais recente, 1.7.0.2-preview20100309. Deve ser a quarta tela de configuração, logo após escolher o diretório de instalação.
— Alex Moore

@ Tem quase o mesmo. Ele provavelmente atualizará o msysgit em algum momento. Por que invadir o registro com alterações que você provavelmente esquecerá?
— Alex Moore

9
Sem desinstalar, desmarcar a opção fornece um aviso sobre NÃO desinstalar a opção na v 1.8.0, FYI. Isso ocorre 2 anos após a resposta, portanto não há voto negativo, porque pode não ter sido assim.
— CAD bloke

9

No Windows 10, nenhuma das opções acima funcionou para mim. A melhor solução que encontrei é desinstalar o aplicativo, reinstalá-lo e ter cuidado durante o processo de instalação para desmarcar a integração do Windows Explorer

remover git remover clique nas opções de menu


2
Posso confirmar que a resposta aceita funciona no Windows 10 x64.
— ZorleQ 19/09/15

+1 Essa foi a única coisa que funcionou para mim em uma das minhas máquinas com Windows 10. Dito isto, a resposta aceita funcionou em outra.
— user1843640

11
O mesmo aqui (Win10 x64). Tem que desinstalar e instalar novamente.
— AlbertoFdzM 27/01

Também é isso que funcionou para mim. (Win10 x64). Teve que desinstalá-lo e instalar novamente.
— Tawani

7

Eu tive um problema semelhante e toda a resposta acima não funciona para mim. ENTÃO Finalmente encontrei uma solução nas etapas abaixo.

Etapa 1: Digite o regeditmenu Iniciar

Etapa 2: Execute o Editor do Registro

Etapa 3: Navegue paraHKEY_CURRENT_USER\SOFTWARE\Classes\Directory\Background\shell

Etapa 4: clique em "shell"

Etapa 5: clique com o botão direito do mouse em "Git Bash Here" e escolha a opção de exclusão

Felicidades


11
Isso funcionou para mim. Provavelmente porque o meu git está instalado para o usuário, e não em todo o sistema.
— Rafee #

3

Para adicionar ao que o dfkt disse, há mais um local para as Pastas da Biblioteca:

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

Esse número específico entre HKEY_USERS e Software provavelmente varia de pessoa para pessoa e de conta para conta, portanto, verifique se é adequado para você.

Portanto, a remoção completa e modificada do registro seria:

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

No Windows 10 de 64 bits, você precisa fazer o seguinte:


1. Excluir entradas do registro

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

Por conveniência ou se você deseja automatizar a remoção (por exemplo, para usar após a atualização do choco), você pode executar no Powershell (executar como Admin):

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. Cancele o registro da DLL de extensões do shell para remover entradas de menu adicionais (clone do GitExt ..., GitExt Create New Repository, etc.):

regsvr32 /u "C:\Program Files (x86)\GitExtensions\GitExtensionsShellEx64.dll"
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.