2010-06-04 7 views
26

git clone [email protected]: myapp.gitGit falsche E-Mail-Adresse zu verwenden, wenn im Gespräch mit Heroku

Ergebnisse in einem "myoldemailaddress nicht für den Zugriff auf myapp autorisiert"

myoldemailaddress war eine E-Mail-Adresse war ich mit auf einem alten Heroku-Konto, aber es scheint, dass ich es benutze, ich kann mein neues verwenden.

ich das .heroku Verzeichnis entfernt haben, und es regeneriert, es den richtigen Benutzernamen und ein Passwort hat, kann ich meine apps sehen aufgelistet Ich habe meinen Schlüssel hochgeladen (Ich habe meine mehrere Male regeneriert) ssh-keygen -t rsa -C MeineNewadresse

Ich deinstalliert und wieder heroku auf einem anderen Benutzer in der gleichen Maschine funktioniert es gut.

Etwas über mein Konto hat meine alte Adresse, aber ich kann nicht herausfinden, wo.

+0

Haben Sie versucht, .ssh entfernen oder .git? Machen Sie Backups bevor Sie es versuchen. – ponzao

+0

Wie sieht dein '~/.ssh/config' aus? – wilhelmtell

Antwort

3

Haben Sie Ihre Myoldemailaddress immer noch als Benutzer in Ihrer globalen Gitconfig-Datei aufgeführt?

Ich bin nicht sicher, ob Heroku das überhaupt benutzt, aber das ist der nächste Ort, an dem ich suchen würde.

+0

Yea versuchte das, kein Glück :( – David

4

Ich hatte das gleiche Problem - und Neustart meines Computers repariert es.

1

Sie können "myoldemailaddress" als Mitarbeiter in Ihrem Heroku App

5

ich hinzufügen, löste das gleiche Problem mit den folgenden Schritten:

  1. löschte die Anwendung auf Heroku

  2. erzeugt neue Schlüssel mit

ssh-keygen -t rsa -C myNewEmail

  1. hat neue Schlüssel mit

Heroku Schlüssel:

  1. neu erstellt und schob die Anwendung hinzufügen

einige Schritte können optional sein (wie Löschen der Anwendung), aber das hat funktioniert!

E/

+0

Doing dies nach Juan Antwort zu tun, arbeitete für mich. – Dex

0

Hat Ihr Projekt Wurzel haben einen .git Ordner? Wenn dies der Fall ist, überprüfen Sie die Konfigurationsdatei dort. In der Konfiguration auf Projektebene kann die alte E-Mail-Adresse festgelegt sein, die die globale Einstellung außer Kraft setzt.

41

Falls Sie noch eine Antwort benötigen, ist das Problem, dass Sie wahrscheinlich einen alten SSH-Schlüssel in Ihrem ssh-Agent geladen haben.

Ihre aktuell geladenen Schlüssel zu überprüfen, verwenden Sie den folgenden Befehl ein:

ssh-add -L 

Zuerst muss die Schlüssel aus dem Agenten mit entfernen (sudo erinnern):

sudo ssh-add -d 

Dann fügen Sie den neuen Schlüssel (die mit Ihrernewemailaddress) mit

ssh-add /path/to/your/private/key/file 

Dies sollte das Problem beheben.

+0

Juan: Ihre Lösung arbeitete für mich. Nochmals vielen Dank. – rupakg

+1

Ich dachte, das nicht für mich gelten, weil der richtige Schlüssel geladen wurde, aber Entfernen Sie es und neu laden es behoben – Pablo

+1

Irgendwelche Ideen, wie Sie es dauerhaft beheben? – Pablo

0

Schauen Sie in .git/config, die Ihre globale ~ /. Gitconfig außer Kraft setzt.

1

In meinem Fall war das Problem, ich hatte zwei Benutzer bei heroku, pupeno @ home und pupeno @ work. Meine persönlichen Schlüssel, wo so in beiden Benutzer injiziert, wenn ich auf ein persönliches Projekt arbeitete ich war immer:

$ git push heroku master 

! [email protected] not authorized to access home-project 

fatal: The remote end hung up unexpectedly 

aus- und wieder Hinzufügen der Schlüssel, wie Juan erklärt, gearbeitet, aber nur, bis mein Computer neu gestartet wurde. Durch das Entfernen des Schlüssels vom Benutzer wurde das Problem endgültig behoben. Ich tat es mit

heroku keys:remove [email protected] 

in meiner Arbeitsmaschine. Nicht sicher, wie es für einen alten Benutzer gemacht wird. Ich nehme an, ~/.heroku/credentials zu entfernen, dann einen heroku Befehl auszuführen und mich mit dem alten Benutzer einzuloggen.

0

Sie können auch versuchen, einen neuen Zweig vom Ursprung zu erstellen und dann alle Änderungen auf diesen neuen Zweig anzuwenden. Irgendwie hat das für mich funktioniert. Vielleicht speichert Git die Benutzer-E-Mail irgendwo in Ihrem lokalen Repo? Mein Problem war, dass, obwohl ich meine E-Mail-Adresse überall geändert und meine Schlüssel aktualisiert hatte, immer noch nicht auf die neue E-Mail-Adresse geändert wurde.

0

Dieses Plugin https://github.com/heroku/heroku-accounts funktionierte gut für mich. Es war auf meinem Heroku-Account hängen geblieben und ich nutzte dies, um mein persönliches Konto hinzuzufügen und dorthin zu wechseln. Sehr einfach zu bedienen und bietet eine einfache Möglichkeit, zwischen Konten zu wechseln.

Mit dem Terminal zu installieren: heroku plugins:install heroku-accounts

ein Konto hinzufügen: heroku accounts:add personal

Sie werden dann für Ihre Heroku E-Mail und Passwort gefragt.

Zum Umschalten auf das Konto: heroku accounts:set personal

Konten aufzulisten: heroku accounts

Kontokorrent zu finden: heroku accounts:current