Ich habe zwei GitHub-Konten eingerichtet, aber ich kann nicht erreichen, dass SSH-Schlüssel richtig funktionieren. Ich habe verschiedene Configs ausprobiert.
Host github_username1
HostName github.com
IdentityFile ~/.ssh/rsa_1
User username1
Host github_username2
HostName github.com
IdentityFile ~/.ssh/rsa_2
User username2
git push
:
Permission denied (publickey).
fatal: The remote end hung up unexpectedly
Funktioniert für Benutzername1:
Host github.com
HostName github.com
IdentityFile ~/.ssh/rsa_1
User username1
Host github.com
HostName github.com
IdentityFile ~/.ssh/rsa_2
User username2
git push
bei username2's repo:
ERROR: Permission to username2/repo.git denied to username1.
fatal: The remote end hung up unexpectedly
Ich habe es auch git push
mit beiden IdentityFile
und User
Einstellungen unter gleichen probiert Host
. Die Ausgabe ist die gleiche wie bei der letzten Konfiguration.
Ich denke, Git sucht automatisch nach Host "github.com", weil die Fernbedienung so ist. Es wird gesagt, dass Host alles sein kann, was Sie wollen ( /programming//a/3828682 ). Gibt es eine Möglichkeit, zu ändern, welchen Host von der SSH-Konfiguration aus ein bestimmtes Repo verwenden soll?
Es wäre ideal, wenn ich das nur mit ~ / .ssh / config lösen könnte.
IdentitiesOnly=yes
jedenhost
Abschnitt hinzufügen , um sicherzustellen, dass ssh nur die ausgewählte Identitätsdatei auswählt und keine anderen Standardeinstellungen