Wie entferne ich die Rechtsklick-Menüoptionen von msysgit?

346

Dies ist nicht die beste Programmierfrage, aber seien wir ehrlich, die Serverfehler sind nicht gut mit Git vertraut, also denke ich, dass es mehr für dieses Publikum ist.

Ich möchte in meiner Shell zu TortoiseGit oder PortableGit wechseln, aber mir bleiben diese nervigen Kontextmenüoptionen.

Wie bringe ich sie dazu, wegzugehen? Muss ich ein Skript schreiben, um sie zu deinstallieren?

Entwicklung von Chris
quelle
Eine gelöschte Antwort aus dem OP verwies auf diese URL als eine Lösung enthaltend.
Halfer

Antworten:

623

64-Bit-Windows

Führen Sie in einem cmd.exe-Fenster die folgenden Befehle aus:

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

32-Bit-Windows

Führen Sie diese Befehle in einem cmd.exe-Fenster aus

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

Windows 10

Wenn Sie unter Windows 10 arbeiten und die vorherigen Methoden nicht funktioniert haben, versuchen Sie, die Anwendung zu deinstallieren und neu zu installieren. Seien Sie jedoch während des Installationsvorgangs vorsichtig, indem Sie die Windows Explorer-Integration deaktivieren

Geben Sie hier die Bildbeschreibung ein

mpmeyer
quelle
9
Die Datei ist git_shell_ext64.dll für ein 64-Bit-Betriebssystem wie Windows 7
Matt
2
Für neuere Versionen von GitExtentions folgen Sie den Anweisungen hier
The Scrum Meister
3
Vielen Dank für die Randnotiz, @TheScrumMeister, aber jeder Leser sollte sich auch daran erinnern, dass GitExtensions kein Git-Gepard ist.
JayC
2
Ich brauche nur ein einzelnes Menü, das als GIT >> aufgeführt ist und das erweitert wird, um ein untergeordnetes Menü zu erhalten, das sich derzeit in meinem Rechtsklick-Handler befindet. Wie kann ich das tun?
Shankar Regmi
1
Ich kann keine DLL-Dateien mit "Shell" im Namen unter meinem Git-Ordner finden. Das Entfernen des Werts aus regedit hat jedoch bei mir funktioniert.
Liggliluff
88

Nur diese Entfernung der Registrierung - sonst nichts - funktionierte für mich unter Win8.1 ab den neuesten Versionen:

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]
dfkt
quelle
1
In einem seltsamen Fall bei Sieg 7 war dies auch die einzige Lösung, die funktionierte.
Musa Haidari
Dies hat unter Windows 7 hervorragend funktioniert, danke @dfkt!
Jay Taylor
Funktioniert in Win 10.
Stanojkovic
1
Ich habe Git mit Chocolatey installiert, daher wurde eine unbeaufsichtigte Installation durchgeführt und die Shell-Erweiterungen standardmäßig aktiviert. Das war die Lösung für mich. Hinweis: Ich konnte nur Reg-Schlüssel für "HKEY_CLASSES_ROOT \ Directory *" finden. die anderen schienen nicht zu existieren.
Christopher Bull
Unter win10 (und möglicherweise auch unter anderen) müssen Sie nicht neu starten oder sich neu anmelden, damit die Änderungen berücksichtigt werden
Kyle,
39

Sie können einzelne Einträge auch mit CCleaner deaktivieren.

Geben Sie hier die Bildbeschreibung ein

Agostino
quelle
1
Auch nach dem Deaktivieren der Kontextmenüoptionen in ccleaner sind die Kontextmenüoptionen immer noch für mich da ...
Hexikel
@hexicle für mich hat es nach dem Neustart des explorer.exeProzesses funktioniert
Vlad Sabev
20

Wenn Sie msysgit installieren, gibt es eine Option für "Windows Explorer-Integration", die Sie deaktivieren, damit sie nicht angezeigt werden.

Sie können das Setup erneut ausführen und die Option deaktivieren oder sie dann deinstallieren und neu installieren und deaktivieren.

Alex Moore
quelle
7
Was möchtest du, ein Festzelt?
Alex Moore
Leider war das keine Option, als es installiert wurde, also denke ich, dass ich kein Glück damit habe.
Entwicklung von
Ich weiß, dass dies eine Option in der neuesten Version 1.7.0.2-Vorschau20100309 ist. Es sollte der 4. Setup-Bildschirm sein, direkt nach Auswahl des Installationsverzeichnisses.
Alex Moore
@hasen Kaum das gleiche. Er wird wahrscheinlich irgendwann msysgit aktualisieren. Warum also die Registrierung mit Änderungen durchsuchen, die Sie wahrscheinlich vergessen werden?
Alex Moore
9
Ohne Deinstallation erhalten Sie durch Deaktivieren der Option eine Warnung, dass die Option in Version 1.8.0, FYI, NICHT deinstalliert wird. Dies ist 2 Jahre nach der Antwort, also keine Ablehnung, da es damals vielleicht nicht so war.
CAD Kerl
9

In Windows 10 hat nichts davon für mich funktioniert. Die beste Lösung, die ich gefunden habe, besteht darin, die Anwendung zu deinstallieren und neu zu installieren. Achten Sie während des Installationsvorgangs darauf, die Windows Explorer-Integration zu deaktivieren

git entfernen Klickmenüoptionen entfernen

Abdalla Mohamed Aly Ibrahim
quelle
2
Ich kann bestätigen, dass die akzeptierte Antwort unter Windows 10 x64 funktioniert.
ZorleQ
+1 Dies war das einzige, was auf einem meiner Windows 10-Computer für mich funktioniert hat. Die akzeptierte Antwort funktionierte jedoch für eine andere.
user1843640
1
Gleiches hier (Win10 x64). Müssen es deinstallieren und erneut installieren.
AlbertoFdzM
Das hat auch bei mir funktioniert. (Win10 x64). Musste es deinstallieren und erneut installieren.
Tawani
7

Ich hatte ein ähnliches Problem und die obige Antwort funktioniert bei mir nicht. DANN habe ich in den folgenden Schritten eine Lösung gefunden.

Schritt 1: Geben Sie das regeditStartmenü ein

Schritt 2: Führen Sie den Registrierungseditor aus

Schritt 3: Navigieren Sie zuHKEY_CURRENT_USER\SOFTWARE\Classes\Directory\Background\shell

Schritt 4: Klicken Sie auf "Shell"

Schritt 5: Klicken Sie mit der rechten Maustaste auf "Git Bash Here" und wählen Sie die Löschoption

Prost

Lavekush Agrawal
quelle
1
Das hat bei mir funktioniert. Höchstwahrscheinlich, weil mein Git für den Benutzer installiert ist und nicht systemweit.
Rafee
3

Um das zu ergänzen, was dfkt gesagt hat, gibt es einen weiteren Speicherort für die Bibliotheksordner:

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

Diese spezifische Nummer zwischen HKEY_USERS und Software variiert wahrscheinlich von Person zu Person und von Konto zu Konto. Stellen Sie also sicher, dass sie für Sie richtig ist.

Die modifizierte, vollständige Entfernung der Registrierung wäre also:

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]
F-Lambda
quelle
1

Unter Windows 10 64-Bit müssen Sie beide der folgenden Schritte ausführen :


1. Löschen Sie die Registrierungseinträge

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

Zur Vereinfachung oder wenn Sie das Entfernen automatisieren möchten (z. B. nach dem Choco-Upgrade), können Sie Powershell ausführen (als Admin ausführen):

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. Heben Sie die Registrierung der Shell-Erweiterungs-DLL auf, um zusätzliche Menüeinträge zu entfernen (GitExt-Klon ..., GitExt Create New Repository usw.):

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