Wie stelle ich sicher, dass Git mich nicht nach meinem GitHub-Benutzernamen und-Passwort fragt?
Ich arbeite mit einem Repo auf GitHub und jedes Mal, wenn ich versuche, etwas zu pushen, wird nach meinem GitHub-Benutzernamen und-Passwort gefragt. Ich will nicht, dass es das tut.
Ich habe die Anweisungen zum Festlegen Ihrer E-Mail in Git ausprobiert, nämlich das Einrichten der Git-Variablen github.Benutzer-und github.token, aber das machte keinen Unterschied.
Ich verstehe nicht, warum das passiert.
13 answers
Sie müssen einen ssh-Agent einrichten, für den Sie sich nur einmal authentifizieren müssen. Siehe diese Antwort bei SO für ein Howto.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2017-05-23 11:33:51
Hatte heute ein ähnliches Problem: Ich habe die Dinge in meiner Arbeitskopie durcheinander gebracht, also habe ich beschlossen, das Verzeichnis umzubenennen und mein Projekt erneut von Github zu klonen. Aber danach musste ich mein Passwort eingeben, um eine Pull/Push-Anfrage zu stellen, anstatt die Passphrase nur einmal wie früher einzugeben.
Das lag daran, dass ich heute das https-Protokoll zum Klonen des Projekts verwendet habe! Um zu überprüfen, welches Protokoll Sie verwenden, führen Sie einfach
git config -l
Und sieh dir die Zeile an, die mit 'remote.Herkunft.url'.
Um Protokolle zu wechseln:
git config remote.origin.url [email protected]:the_repository_username/your_project.git
the_repository_username
und your_project
sollte durch den entsprechenden Repository-Namen und den Eigentümer dieses Repositorys ersetzt werden. Der Benutzername gehört Ihnen, wenn Sie das Repository besitzen, oder der Benutzername des Repository-Besitzers andernfalls.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2012-06-15 15:56:22
Wenn Sie HTTPS anstelle von SSH verwenden, können Sie Folgendes tun:
-
Finden Sie Ihre remote-URL (remote.Herkunft.url) mit
git config -l
Danke an Sergio Morstabilini
Ihre Remote-URL wird wie folgt aussehen: https:/ / {BENUTZERNAME}@github.com/{BENUTZERNAME} / {REPONAME}. git
-
Führen Sie diesen Befehl aus :
git config remote.origin.url https://{USERNAME}:{PASSWORD}@github.com/{USERNAME}/{REPONAME}.git
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2013-12-03 22:40:15
Ich bevorzuge HTTPS, ich finde es einfacher und sicherer als das Einrichten der SSH-Schlüssel.
Mit HTTPS können Sie verhindern, dass git Ihren Benutzernamen wie folgt nach Github-Fernbedienungen fragt:
git config --global url."https://[email protected]".insteadOf "https://github.com"
Und Sie können zumindest die Häufigkeit reduzieren, mit der git nach Ihrem Passwort fragt:
git config --global credential.helper 'cache --timeout=28800'
Wobei 28800 8 Stunden sind. Ich benutze dieses Setup, um mein Passwort nur einmal einzugeben, wenn ich meinen Arbeitstag beginne.
Danach haben Sie diese Einträge in Ihrem ~/.gitconfig
[url "https://[email protected]"]
insteadOf = https://github.com
[credential]
helper = cache --timeout=28800
Quelle:
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2017-10-01 18:33:44
Wenn Sie einen SSH-Schlüssel für github einrichten und dieser nicht Ihr Standardschlüssel ist, müssen Sie Ihrem ~/.ssh/config
Host *github.com
User git
IdentityFile ~/.ssh/github_id_rsa
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2010-10-14 19:45:54
Wenn Sie jedes Mal nach Ihrem Passwort gefragt werden möchten, aber nicht nach Ihrem Benutzernamen, konfigurieren Sie die Fernbedienung als HTTPS mit einem Benutzernamen.. Wie das hier..
git config remote.origin.url https://[email protected]/repo_owner/repo_name
Danach werden Sie jedes Mal nach Ihrem Passwort gefragt, aber nicht nach Ihrem Benutzernamen.
So bevorzuge ich es, da ich gerne gezwungen werde, mein Github-Passwort einzugeben, bevor ich es mit der Welt teile.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2013-12-19 07:28:15
Wenn Sie unter Windows HTTPS verwenden, versuchen Sie es mit dem Git Credential Store - er verwendet den Windows Credential Store, um Ihren Namen und Ihr Passwort zu speichern.
Windows Credential Store for Git
This application is a small helper app designed to follow the
git credentials API as defined by the Git Documentation.
Installation
1. Download the git-credential-winstore.exe application
2. Run it! If you have GIT in your PATH, it should just work.
Wenn Sie das nächste Mal Ihren Namen und Ihr Passwort eingeben, werden sie für Sie gespeichert.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2014-02-23 11:54:29
Die Dinge sind ein wenig anders, wenn Sie 2-Faktor-Auth verwenden, wie ich bin. Da ich anderswo keine gute Antwort gefunden habe, bleibe ich hier, damit ich sie vielleicht später finden kann.
Wenn Sie die 2-Faktor-Authentifizierung verwenden, funktioniert die Angabe von Benutzername/Passwort nicht immer - Sie erhalten Zugriff verweigert. Sie können jedoch ein Anwendungszugriffstoken verwenden und den credential Helper von git verwenden, um dies für Sie zwischenzuspeichern. Hier sind die relevanten links:
- Einrichten der Befehlszeile für die Arbeit mit 2-Faktor auth (Suche nach Abschnitt mit dem Titel " Wie funktioniert es für Befehlszeilen-Git?")
- Zwischenspeicherung von Anmeldeinformationen
Und ich erinnere mich nicht, wo ich das gesehen habe, aber wenn Sie nach Ihrem Benutzernamen gefragt werden, kleben Sie dort das Anwendungszugriffstoken. Dann lassen Sie das Passwort leer. Funktionierte auf meinem mac.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2014-09-25 19:45:49
Benutze SSH
Um zu verhindern, dass GitHub beim Drücken nach dem Passwort fragt, sollten Sie idealerweise SSH verwenden ([email protected]:...
) anstelle der HTTPS-URL (https://github.com/...
) und fügen Sie Ihren SSH-Schlüssel zu Ihrem GitHub-Konto hinzu. Siehe: Welche Remote-URL sollte ich verwenden?
Ein Credential Helper
Andernfalls, wenn Sie wirklich HTTPS verwenden müssen, um Ihr GitHub-Passwort in Git zwischenzuspeichern, sollten Sie einen Credential helper verwenden, um Git mitzuteilen so merken Sie sich Ihren GitHub-Benutzernamen und Ihr Passwort jedes Mal, wenn er mit GitHub spricht.
- Mac:
git config --global credential.helper osxkeychain
(osxkeychain helper
erforderlich ist), - Fenster:
git config --global credential.helper wincred
- Linux und andere:
git config --global credential.helper cache
.netrc
Eine andere Methode ist die Verwendung Konfigurieren Sie Ihren Benutzer / Passwort in ~/.netrc
(_netrc
unter Windows), z.B.
machine github.com
login USERNAME
password PASSWORD
OAuth
Verwenden Sie OAuth-Token (Persönliches API-Token) zum Verschieben der Änderungen, z.B.
git push https://[email protected]/foo/bar
Verwandte:
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2017-05-23 11:33:51
Auch wenn Sie Windows verwenden, können Sie Folgendes verwenden:
$ git config --global credential.helper wincred
Du musst dich nur noch einmal anmelden und dann wird sich git daran erinnern.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2016-06-19 21:10:43
Das Fragen nach dem Benutzernamen ist für mich ärgerlich, aber das Fragen nach einem Passwort ist nett, da es sicherstellt, dass Sie mit Ihren Änderungen wirklich an die Öffentlichkeit gehen möchten...
Also füge ich das einfach zu meinem ".gitconfig"
[url "https://[email protected]"]
insteadOf = https://github.com
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2017-03-08 17:47:40
Verwenden Sie Git Credential Manager für Windows, wenn Sie unter Windows sind.
Dieses Projekt beinhaltet:
- Sichere Passwortspeicherung im Windows Credential Store
- Multi-Faktor-Authentifizierungsunterstützung für Visual Studio Team Services
- Zwei-Faktor-Authentifizierungsunterstützung für GitHub
- Unterstützung für die Generierung und Verwendung persönlicher Zugriffstoken für Visual Studio Team Services und GitHub
- Nicht-interaktive modus unterstützung für Visuelle Studio Team Services unterstützt von Azure Directory
- Kerberos-Authentifizierung für Team Foundation Server
- Optionale Einstellungen für den build-agent optimization
Laden Sie einfach die neueste Version herunter und installieren Sie sie.
Wie benutzt man
Sie nicht. Es magisch funktioniert, wenn Anmeldeinformationen benötigt werden.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2020-06-12 13:48:39
Das hat bei mir funktioniert.
Führen Sie den Befehl mit der folgenden Syntax aus.
git config remote.origin.url https://<<username>>@<<.git url>>
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2020-09-18 07:14:42