Come posso utilizzare SSH per accedere a Github e creare un nuovo repository nella riga di comando?
Quando creo un nuovo repository Github utilizzando il comando curl come mostrato di seguito, mi chiede sempre di inserire la password.
curl -u "$(git config user.name)" https://api.github.com/user/repos -d "{\"name\":\"$1\"}" | grep -q "Bad credentials"
Ecco la mia domanda. Come utilizzare SSH per accedere a Github e creare un nuovo repository utilizzando il portachiavi ssh nella riga di comando?
Risposte
Tieni presente che le impostazioni user.name
/ user.email
config non hanno nulla a che fare con:
- autenticazione (sono usati solo per la paternità del commit)
- il tuo account GitHub (puoi impostare il tuo user.name in modo che sia lo stesso del tuo account GitHub, ma user.name può essere qualsiasi cosa tu voglia, davvero)
Ma utilizzando un curl -H "Authorization: token MY_TOKEN_NUMBERS"
come consigliato da ElpieKay , si aggira completamente la necessità di fornire un "nome utente".
Il PAT (Personal Access Token) è sufficiente per GitHub per autenticarti.
Qualsiasi cosa con " ssh
" in esso (come ~/.ssh/id_rsa.pub
) si applicherebbe solo all'URL SSH ( [email protected]:<me>/<myRepo>
) e non ha nulla a che fare con i curl
comandi basati su HTTPS .
SSH non si applicherebbe api.github.com
comunque alle chiamate, come ho detto nel 2013 .