Git 1.8.0 unterstützt die Integration mit Gnome-Keyring.
http://www.h-online.com/open/news/item/Git-1-8-0-can-access-Windows-and-GNOME-keyrings-1733879.html
Nachdem Sie die Dokumente zu den Hilfsprogrammen für Git-Anmeldeinformationen gelesen haben: http://git-scm.com/docs/gitcredentials.html
Ich konnte keine Möglichkeit finden, diese neue Funktion zu verwenden. Wie kann ich es integrieren? Ich verwende Archlinux mit Git, das aus dem Archlinux-Repository installiert wurde. (git 1.8.0)
git help -a | grep credential-
ob andere Helfer installiert sind. Standardmäßig werdencredential-cache
Folgendes verwendet:credential-store
(Speichern Sie das Kennwort einige Zeit nach der Eingabe, standardmäßig 15 Minuten) und (Speichern Sie das Kennwort standardmäßig im Klartext in einer unverschlüsselten Datei auf der Festplatte~/.git-credentials
).chmod 0755 git-credential-gnome-keyring
, um anderen als root die Ausführungsberechtigung hinzuzufügenGit 1.8.0 wird mit Gnome-Schlüsselbund unterstützt, die Binärdatei muss jedoch für Ihre Plattform kompiliert werden.
Dies hat es für mich in Archlinux gelöst:
Die @ VonC-Lösung war geschlossen, aber der Befehl git config sollte auf die ausführbare Datei verweisen. Deshalb hat es bei mir nicht funktioniert.
quelle
Package gnome-keyring-1 was not found in the pkg-config search path.
, fehlen Ihnen die Entwicklungsbibliotheken für Gnome-Schlüsselbund. Unter Ubuntu sind diese mit verfügbarapt-get install libgnome-keyring-dev
. Außerdem musste ich das Git Contrib Repo manuell von github.com/git/git/tree/master/contrib herunterladen und in / usr / share / git-core / ablegen. Diese Dateien sind nicht mehr in einer Standard-Git-Installation enthalten, zumindest nicht mit dem offiziellen Git-Core-Ubuntu-ppa.git-credential-gnomekeyring
weg ist, schade, dass es in AUR keine solchen Informationen gibt./usr/share/
... nur Gitweb und Git-Core. Aber ich bin auf Git 1.7.9. Könnte das der Grund sein ...?libgnome-keyring
ausreichend (zumindest wenn Sie Gnome verwenden).Update Q4 2016:
Unix, Mac (Git 2.11+)
(Siehe " Fehler bei Verwendung des Git-Anmeldeinformations-Helfers mit
gnome-keyring
")Windows:
(Siehe " Abmelden in der Git Bash-Konsole unter Windows? ": Dies ist Git für Windows mit dem neuesten Microsoft Git Credential Manager für Windows. )
Ursprüngliche Antwort (2012)
Anmeldeinformations-Helfer für Windows-, Mac- und Unix-Plattformen wurden zuerst im Repo "git-credential-helper" eingeführt , das jetzt in der Git-Distribution enthalten ist :
Beim Erstellen wird es im
/path/to/git/credential
Verzeichnis installiert .(hier für Unix):
Hinweis für Windows:
Ich nehme an, Sie könnten ein Programm erstellen, das unter Windows ausgeführt wird und eine Bibliothek wie " pypi keyring 0.10 " aufruft .
Aber das ist das Back-End, und Sie verwenden es nicht direkt von Git aus.
Was Sie verwenden, ist ein "Helfer für Anmeldeinformationen" (der wiederum jede gewünschte Anmeldeinformations-API unter Windows aufruft ).
GitHub für Windows bietet einen solchen Helfer (als ausführbare Datei namens ... github) und kann Ihre Anmeldeinformationen für die Dauer der Windows-Sitzung speichern.
Starten Sie eine Shell aus diesem "GitHub für Windows" -Fenster und geben Sie "git config --system -l" ein:
Der
credential.helper=!github --credentials
Teil ruft den Helfer für Anmeldeinformationen aufgithub
.quelle
Update Oktober 2018
GNOME hat den libgnome-Schlüsselring veraltet und durch libsecret ersetzt. Commit https://github.com/git/git/commit/87d1353a6a hat einen neuen Helfer für Anmeldeinformationen hinzugefügt / usr / libexec / git-core / git-credential-libsecret.
git config --global credential.helper libsecret
quelle
gnome-keyring
basierende Antworten sollten entsprechend bearbeitet werden. Vielleicht einfach die ganze Option ausschließen. Das hat bei Ubuntu 19.10 bei mir überhaupt nicht funktioniert.Für jeden auf Fedora habe ich die Antwort von James Ward leicht bearbeitet:
quelle
/usr/libexec/git-core/git-credential-gnome-keyring
.git config --global credential.helper gnome-keyring
Fügen Sie einfach diese beiden Zeilen zu Ihrer
~/.gitconfig
Datei hinzu:Wenn Sie das nächste Mal von Git nach einem Passwort gefragt werden, wird das eingegebene Passwort im Gnome-Schlüsselring gespeichert (Sie können dies mit dem
seahorse
Tool sehen) und Sie werden danach nicht mehr nach dem Passwort gefragt.Dies setzt voraus, dass Ihre Git-Version ausreichend neu ist (wie 2.1.0) und Sie unter
LinuxFedora, RHEL oder CentOS arbeiten. Für ältere Versionen oder andere Betriebssysteme / Distributionen lesen Sie die anderen Antworten.quelle
git: 'credential-gnome-keyring' is not a git command.
Einige Distributionen werden mit dieser Integration als Installationspaket geliefert, ohne dass eine Kompilierung erforderlich ist. Abhängig von Ihrer Version von GNOME müssen Sie entweder
gnome-keyring
oderlibsecret
Versionen des Pakets installieren , etwagit-credential-gnome-keyring
(OpenSUSE Leap 42.3).Dies allein ermöglicht jedoch nicht automatisch die automatische Integration von Git in den GNOME-Schlüsselring. Sie müssen Git weiterhin so konfigurieren, dass diese Methode zum Speichern von Anmeldeinformationen verwendet wird:
quelle
gnome-keyring
funktioniert die Option für mich nicht mehr, aber James Wards Anweisunglibsecret
funktioniert immer noch gut. Ich war jedoch verwirrt über diegnome-keyring
hier gegebene Empfehlung : github.com/timhughes/git-credential-libsecretlibsecret
(oder wasfind /usr -iname git-credential-libsecret
gibt) ist die richtige Option in Gentoo Linux. Beachten Sie, dass mit erstellt werdendev-vcs/git
mussUSE=gnome-keyring
.Auf Fedora müssen Sie installieren
und bearbeiten Sie Ihre Git-Konfiguration , um den Helfer für Anmeldeinformationen zu verwenden.
Zu Ihrer Information, das
libsecret
Paket wurde kürzlich aufgeteilt, siehe Beitrag von @rugk . Aus diesem Grund müssen Benutzer dieses Paket neu installieren.quelle