Wie melde ich mich mit SSH bei Github an und erstelle ein neues Repository in der Befehlszeile?
Wenn ich ein neues Github-Repository mit dem unten gezeigten Befehl curl erstelle, werde ich immer aufgefordert, das Kennwort einzugeben.
curl -u "$(git config user.name)" https://api.github.com/user/repos -d "{\"name\":\"$1\"}" | grep -q "Bad credentials"
Hier ist meine Frage. Wie verwende ich SSH, um mich bei Github anzumelden und ein neues Repository zu erstellen, indem ich den ssh-Schlüsselbund in der Befehlszeile verwende?
Antworten
Beachten Sie, dass die user.name
/ user.email
config-Einstellungen nichts zu tun haben mit:
- Authentifizierung (sie werden nur zum Festschreiben der Urheberschaft verwendet)
- Ihr GitHub-Konto (Sie können Ihren Benutzernamen so einstellen, dass er mit Ihrem GitHub-Kontonamen übereinstimmt, aber der Benutzername kann wirklich alles sein, was Sie wollen)
Wenn Sie einen curl -H "Authorization: token MY_TOKEN_NUMBERS"
von ElpieKay empfohlenen verwenden , umgehen Sie die Notwendigkeit, einen "Benutzernamen" anzugeben , vollständig.
Das PAT (Personal Access Token) reicht aus, damit GitHub Sie authentifiziert.
Alles, was ' ssh
' enthält (wie ~/.ssh/id_rsa.pub
), würde nur für die SSH-URL ( [email protected]:<me>/<myRepo>
) gelten und hat nichts mit HTTPS-basierten curl
Befehlen zu tun .
SSH würde api.github.com
sowieso nicht für Anrufe gelten , wie ich 2013 erwähnte .