2016-04-11 18:29:43 +0000 2016-04-11 18:29:43 +0000
52
52

Wie wechsle ich den git-Benutzer am Terminal?

Ich versuche, ein Projekt von der Befehlszeile aus in ein entferntes Repository zu pushen.

Von meinem lokalen Verzeichnis aus drücke ich:

$ git push

und erhalte folgende Fehlermeldung:

remote: Berechtigung für Benutzername1/repo.git verweigert für Benutzername2. fatal: Zugriff nicht möglich https://github.com/username1/repo.git/ ’: Die angeforderte URL gab Fehler zurück: 403

Wo username1 der Benutzername meines github-Accounts ist, der das Repository hostet, auf das ich pushen möchte, und username2 ein alter Account ist, den ich früher auf diesem Rechner benutzt habe.

Ich benutze OS X Yosemite (v10.10.5) auf einem Macbook Air. Und ich würde es vorziehen, https statt ssh zu benutzen.

Wie aktualisiere ich auf username1, damit ich erfolgreich auf meine Fernbedienung pushen kann?

Bearbeiten: Um es klar zu sagen, ich spreche nicht vom einfachen Bearbeiten des config user-Objekts, z.B.

$ git config --global user.name "Billy Everyteen"
$ git config --global user.email "billyeveryteen@example.com"

Sie haben nichts mit Authentifizierung zu tun. Meine Frage bezieht sich auf die Benutzerauthentifizierung, die notwendig ist, um in mein entferntes Repository zu schreiben.

Antworten (4)

49
49
49
2016-04-11 20:21:23 +0000

Zusätzlich zur Änderung des Benutzernamens und der E-Mail vom Terminal mit git config:

$ git config --global user.name "Bob"
$ git config --global user.email "bob@example.com"

müssen Sie die Autorisierungsinformationen vom Schlüsselbund entfernen. Damit hatte ich auch schon Probleme, bis ich herausfand, dass ich auch ein Zertifikat in meinem Schlüsselbund hatte.

Öffnen Sie den Schlüsselbundzugang, klicken Sie auf Alle Artikel und suchen Sie nach git. Sie erhalten einige Artikel wie diesen:

Löschen Sie sie. Versuchen Sie nun, das Repo zu drücken, und git wird Sie auffordern, ein Passwort für den Benutzer zu schreiben, und schon können Sie loslegen.

27
27
27
2017-08-29 02:07:39 +0000

Für Cli-Benutzer, benutzen Sie einfach dies : git config credential.username 'Billy Everytee'

10
10
10
2018-11-02 16:17:26 +0000

Für Windows-Benutzer: Folgen Sie den Anweisungen: Systemsteuerung >> Benutzerkonto >> Berechtigungsnachweis-Manager >> Windows-Berechtigungsnachweis >> Generischer Berechtigungsnachweis

entfernen Sie den Git-Berechtigungsnachweis. Wenn Sie das nächste Mal Repo drücken, werden Sie nach dem Berechtigungsnachweis gefragt. Antwort-Referenz für detaillierte Erklärung

8
8
8
2019-02-13 08:05:24 +0000

Geben Sie Ihre Git-Konfiguration an

git config --list

Benutzername und E-Mail global ändern

git config --global user.name "Nanhe Kumar"
git config --global user.email "info@nanhekumar.com"

Benutzername und E-Mail für die aktuelle Repo ändern

git config user.name "Nanhe Kumar"
git config user.email "info@nanhekumar.com"

Ändern Sie Ihre Repo-URL, wenn Sie Bit-Eimer verwenden.

nano .git/config

Diese Datei wird etwa so aussehen.[core] repositoryformatversion = 0 fileMode = false bare = false logallrefupdates = true ignorecase = true precomposeunicode = true [remote "origin"] url = https://nanhe@bitbucket.org/nanhekumar/myproject.git fetch = +refs/heads/*:refs/remotes/origin/* [branch "master"] remote = origin merge = refs/heads/master

[user]
        name = Nanhe Kumar
        email = info@nanhekumar.com