TortoiseGit speichert Benutzerauthentifizierung / Anmeldeinformationen

286

Gibt es eine Möglichkeit, GITHUB's user credentialsmit TortoiseGit zu sparen ?

Jedes Mal, wenn ich ein Push / Pull mache, wird der folgende Dialog angezeigt.

Ich möchte meine Benutzeranmeldeinformationen irgendwo speichern, wie ich es mit TortoiseSVN getan habe.

Geben Sie hier die Bildbeschreibung ein

Murali Murugesan
quelle
Sie können den Anmeldeinformations-Manager auch zum Speichern / Verwalten von Anmeldeinformationen verwenden. stackoverflow.com/a/31782500/730676
user730676

Antworten:

351

Für TortoiseGit 1.8.1.2 oder höher gibt es eine grafische Benutzeroberfläche zum Ein- und Ausschalten des Hilfsprogramms für Anmeldeinformationen.

Es unterstützt git-credential-wincredund git-credential-winstore.

TortoiseGit 1.8.16 bietet Unterstützung für git-credential-manager(Git Credential Manager, der Nachfolger von git-credential-winstore)

Bei der ersten Synchronisierung werden Sie nach Benutzer und Kennwort gefragt. Sie geben diese ein und sie werden im Windows-Anmeldeinformationsspeicher gespeichert. Bei der nächsten Synchronisierung werden Sie nicht nach Benutzer oder Kennwort gefragt.

Verwendung: Klicken Sie mit der rechten Maustaste auf → TortoiseGit → Einstellungen → Git → Anmeldeinformationen. Wählen Sie Helfer für Anmeldeinformationen: wincred - nur dieses Repository / wincred - aktueller Windows-Benutzer

Geben Sie hier die Bildbeschreibung ein

linquize
quelle
40
Ordentlich. Wie benutze ich es jetzt?
BlueRaja - Danny Pflughoeft
16
Rechtsklick -> TortoiseGit -> Einstellungen -> Git -> Anmeldeinformationen. Wählen Sie Helfer für Anmeldeinformationen: wincred - this repository only/wincred - current Windows user
Linquize
33
Nein, Sie müssen zuerst den Helfer für Anmeldeinformationen aktivieren. Bei der ersten Synchronisierung werden Sie nach Benutzer und Kennwort gefragt. Sie geben diese ein und sie werden im Windows-Anmeldeinformationsspeicher gespeichert. Bei der nächsten Synchronisierung werden Sie nicht nach Benutzer oder Kennwort gefragt.
Linquize
7
Hinweis: Dies funktioniert nicht, wenn Ihr Benutzername ein @! Zumindest für mich ist dies auch ein gemeldeter Fehler: github.com/msysgit/msysgit/issues/258
OschtärEi
5
Installieren Sie für TortoiseGit 1.8.16 und höher den Git Credential Manager für Windows - github.com/Microsoft/Git-Credential-Manager-for-Windows - und befolgen Sie die obigen Anweisungen. GCM kümmert sich auch um die Creds für Git in Cygwin / Babun, was sehr schön ist.
DrStrangepork
68

Wenn Sie diese Antwort ablehnen wollen

Ich habe dies einige Monate vor der Aufnahme von git-credential in TortoiseGit geschrieben. Angesichts der Anzahl der großen Sicherheitslücken in den letzten Jahren und der Tatsache, wie viel ich über Netzwerksicherheit gelernt habe, würde ich dringend empfehlen, für jeden Server, mit dem Sie eine Verbindung herstellen, einen eindeutigen SSH-Schlüssel (mindestens 2048 Bit RSA) zu verwenden.

Die folgende Syntax ist weiterhin verfügbar, obwohl es heute weitaus bessere Tools gibt, so git-credentialdass die akzeptierte Antwort Ihnen sagt, wie Sie sie verwenden sollen. Mach das stattdessen.


Versuchen Sie, die Remote - URL zu ändern , um , https://[email protected]/username/repo.gitwo usernameist Ihr GitHub Benutzernamen und repoist der Name Ihres Repositorys.

Wenn Sie auch Ihr Passwort speichern möchten (nicht empfohlen), sieht die URL folgendermaßen aus : https://username:[email protected]/username/repo.git.

Es gibt auch eine andere Möglichkeit, das Passwort aus diesem Github-Hilfeartikel zu speichern: https://help.github.com/articles/set-up-git#password-caching

Robert Rouhani
quelle
Wo kann ich die Remote-URL sehen? In Einstellungen -> Remote -> URL ist leer. Aber ich gab git URL, wenn ich zum ersten Mal
klone
2
Klicken Sie im Remote-Menü auf "Ursprung", um die URL
aufzurufen
Ich denke, es funktioniert, kann aber nicht überprüfen, da ich
bekomme,
Hoppla, habe die URL aus einem alten Beispiel gezogen. Ein kurzer Blick auf eines meiner Repos zeigt, dass die URL eigentlich lauten sollte: https://[email protected]/username/repo.gitwobei beide Instanzen usernameIhr Benutzername sind. Die Antwort wurde aktualisiert.
Robert Rouhani
1
Dies löste das Problem viel schneller und einfacher: stackoverflow.com/questions/8846972/tortoisegit-asking-password
ShloEmi
25

Keine der oben genannten Antworten hat bei mir mit der Git-Version 1.8.3.msysgit.0 und TortoiseGit 1.8.4.0 funktioniert.

In meiner speziellen Situation muss ich über HTTPS eine Verbindung zum Remote-Git-Repo herstellen und eine vollständige E-Mail-Adresse als Benutzernamen verwenden. In dieser Situation wincredschien nicht zu funktionieren.

Die Verwendung der E-Mail-Adresse als Teil der Repo-URL funktionierte ebenfalls nicht, da die Software durch das doppelte Auftreten des @ -Zeichens in der URL verwirrt zu sein scheint.

Ich habe es geschafft, das Problem mit zu überwinden winstore. Folgendes habe ich getan:

Dadurch wird das git-credential-winstore.exein ein lokales Verzeichnis kopiert und Ihrem globalen Verzeichnis werden zwei Zeilen hinzugefügt .gitconfig. Sie können dies überprüfen, indem Sie Ihre globale überprüfen .gitconfig. Dies geschieht am einfachsten über die rechte Maustaste in einem Ordner "TortoiseGit> Einstellungen> Git> Globale .gitconfig bearbeiten". Die Datei sollte zwei Zeilen enthalten wie:

    [credential]
        helper = !'C:\\Users\\yourlogin\\AppData\\Roaming\\GitCredStore\\git-credential-winstore.exe'
  • Unter "Netzwerk" oder "Anmeldeinformationen" sind keine weiteren TortoiseGit-Einstellungen erforderlich. Insbesondere: Das Pulldown-Menü "Credential Helper" unter "Credential" ist aufgrund dieser Konfigurationszeilen leer, da TortoiseGit den neuen Helfer nicht erkennt. Stellen Sie das Pulldown-Menü nicht auf einen anderen Wert ein, da sonst die globale .gitconfig mit einem falschen Wert überschrieben wird! (*)

Sie können jetzt loslegen:

  • Versuchen Sie, aus dem Remote-Repository zu ziehen. Sie werden ein Authentifizierungs-Popup bemerken, in dem Sie nach Ihrem Benutzernamen und Passwort gefragt werden. Das Popup sollte sich optisch vom Standard-TortoiseGit-Popup unterscheiden. Dies ist ein gutes Zeichen und bedeutet winstorefunktioniert. Geben Sie die richtige Authentifizierung ein und der Pull sollte erfolgreich sein.
  • Versuchen Sie es erneut, und Ihr Benutzername und Ihr Passwort sollten nicht mehr abgefragt werden.

Getan! Genießen Sie Ihre Interaktionen mit dem Remote-Repo, während Sie winstoresich um die Authentifizierung kümmern.

(*) Alternativ können Sie die Option "Erweitert" verwenden, wenn Ihnen die leere Auswahl im Hilfsprogramm für die Einstellungen für TortoiseGit-Anmeldeinformationen nicht gefällt:

  • Gehen Sie zu "TortoiseGit> Einstellungen> Anmeldeinformationen"
  • Wählen Sie den Anmeldeinformations-Helfer "Erweitert".
  • Klicken Sie unter "Helfer" auf "G" (für global)
  • Geben Sie den Hilfspfad wie folgt ein. Hinweis: Eine normale Windows-Pfadnotation (z. B. "C: \ Users ...") funktioniert hier nicht. Sie müssen die genaue Zeile, winstoredie bei der Installation erstellt wurde, .gitconfohne das Bit "helper =" replizieren .

    !'C:\\Users\\yourlogin\\AppData\\Roaming\\GitCredStore\\git-credential-winstore.exe'
    
  • Klicken Sie auf die Schaltfläche "Neu hinzufügen / Speichern"

Patrick Atoon
quelle
Du hast mich in die richtige Richtung gelenkt. Muss nur "wincred - aktueller Windows-Benutzer" verwenden und den Benutzernamen NICHT die E-Mail-Adresse eingeben. Das hat alles gelöst.
Razze
Ich bin froh, dass es dir auf dem richtigen Weg geholfen hat! In meinem Fall hat der Punkt jedoch genau mit der Verwendung einer E-Mail-Adresse zu tun. Dies enthält ein "@" und verursacht Probleme, wenn Sie eines der anderen Rezepte ausprobieren.
Patrick Atoon
2
Ähm,% 40 ist der Code für '@'. Wenn Sie also ' myEmail%[email protected]/username/repo.git ' ausprobiert haben, können Sie Ihre E-Mail-Adresse in die .config eingeben. es ist möglich.
Tom Padilla
Dies ist der richtige und richtige Weg, dies zu tun. Laden Sie das Installationsprogramm von Microsoft / Git-Credential-Manager-für-Windows / Releases herunter , klicken Sie mit der rechten Maustaste auf die setup.exeDatei und führen Sie sie als Administrator aus.
8

Laden Sie für msysgit 1.8.0 git-credential-wincred.exe von https://github.com/downloads/msysgit/git/git-credential-wincred.zip herunter und fügen Sie es in C: \ Programme \ Git \ libexec \ git ein -Ader

Für msysgit 1.8.1 und höher ist die exe integriert.

Fügen Sie in der Git-Konfiguration die folgenden Einstellungen hinzu.

[Berechtigungsnachweis] Helfer = Wincred

linquize
quelle
Wo haben Sie Tortoise Git 1.8.1.2 gefunden? Ich sehe nur 1.8.1.0 auf ihrer Website
Ken Sykora
TortoiseGit 1.8.1.2 ist eine Vorschau-Version.
Linquize
8

Speichern von Benutzername und Passwort mit TortoiseGit

Das Speichern Ihrer Anmeldedaten in TortoiseGit ist ziemlich einfach. Spart die Notwendigkeit, bei jedem Ziehen oder Drücken Ihren Benutzernamen und Ihr Passwort einzugeben.

  1. Erstellen Sie eine Datei mit dem Namen _netrc mit den folgenden Inhalten:

    Maschine github.com
    Login Yourlogin
    Passwort Ihr Passwort

  2. Kopieren Sie die Datei nach C: \ Users \ (oder an einen anderen Speicherort; dies ist zufällig der Ort, an dem ich sie abgelegt habe).

  3. Gehen Sie zur Eingabeaufforderung und geben Sie setx home C: \ Users \ ein

Hinweis: Wenn Sie etwas früher als Windows 7 verwenden, funktioniert der Befehl setx möglicherweise nicht für Sie. Verwenden Sie stattdessen set und fügen Sie die Variable für die Heimumgebung über die erweiterten Einstellungen unter Arbeitsplatz zu Windows hinzu.

KREDIT AN: http://www.munsplace.com/blog/2012/07/27/saving-username-and-password-with-tortoisegit/

Anthony Keane
quelle
2
Das ist die beste Lösung! Aber können Sie die Beziehung zwischen _netrc-Datei und git erklären? Kann diese Datei mehr als einen Bereich speichern?
Alex Byrth
8

[Git-Einstellungen öffnen (TortoiseGit → Einstellungen → Git)] [1]

[In GIt: Klicken Sie hier, um die globale .gitconfig zu bearbeiten.] [2]

Konfigurationsbenutzername und Passwort

thinhnv
quelle
8

Wenn Sie ein Windows 10 + TortoiseGit 2.7-Benutzer sind:

  1. Befolgen Sie beim ersten Anmelden einfach die Anweisungen, um Ihre Anmeldeinformationen einzugeben und das Kennwort zu speichern.
  2. Wenn Sie jemals Ihre Anmeldeinformationen aktualisieren müssen, verschwenden Sie keine Zeit mit den TortoiseGit-Einstellungen. Stattdessen Windows-Suche> Anmeldeinformations-Manager> Windows-Anmeldeinformationen> Suchen Sie Ihren Git-Eintrag> Bearbeiten.
Denis Wang
quelle
Dies ist die Antwort, nach der Sie suchen, wenn Sie Ihr Windows-Passwort geändert haben und die Git-Authentifizierung nicht mehr funktioniert ... Suchen Sie in deutschem Windows nach "Anmeldeinformationsverwaltung".
Andre
omg danke. Ich weiß, wir sollten keine Kommentare mit Dankeschön hinzufügen. aber danke !!
Stephen Hazel
6

Versuche dies:

  1. Gehen Sie zu Ihrem Repo-Ordner
  2. Klicken Sie mit der rechten Maustaste auf Leerzeichen Tortise Git -> Einstellung
  3. Erhaltene Anmeldeinformationen (normalerweise in der Seitenleiste unter dem Git-Menü)
  4. Wählen Sie im Anmeldeinformations-Helfer Wincred für alle Windows-Benutzer aus
  5. Klicken Sie auf Übernehmen

Es wird nur einmal nach Ihrem Passwort gefragt.

APP
quelle
Bitte verwenden Sie den Begriff "TortoiseGit".
Yue Lin Ho
0

Gehen Sie zum Projekt-Repo und klicken Sie mit der rechten Maustaste -> 'Git Bash Here'.

Geben Sie im git bash Fenster ein

cd ~
pwd

Ich bekomme so etwas

/c/Users/<windows_username>

Kopieren Sie nun Ihre öffentlichen und privaten Schlüssel in diesen Pfad

C:\Users\<windows_username>\.ssh

Ich habe die folgenden Dateien dort

id_rsa
id_rsa.pub
known_hosts

Hier

Wann immer es die Anmeldeinformationen verwenden muss, verwendet es diese Dateien und fordert bei Bedarf zur Eingabe des Kennworts auf.

Rajeshk
quelle