Jak używać SSH do logowania się na Github i tworzenia nowego repozytorium w wierszu poleceń?

Aug 15 2020

Kiedy tworzę nowe repozytorium Github za pomocą polecenia curl, jak pokazano poniżej, zawsze prosi mnie o wprowadzenie hasła.

curl -u "$(git config user.name)" https://api.github.com/user/repos -d "{\"name\":\"$1\"}" | grep -q "Bad credentials"

Oto moje pytanie. Jak używać SSH do logowania się na Github i tworzenia nowego repozytorium przy użyciu pęku kluczy ssh w linii poleceń?

Odpowiedzi

1 VonC Aug 16 2020 at 01:25

Pamiętaj, że ustawienia user.name/ user.emailconfig nie mają nic wspólnego z:

  • uwierzytelnianie (są używane tylko do zatwierdzania autorstwa)
  • Twoje konto GitHub (możesz ustawić swoją nazwę użytkownika tak, aby była taka sama jak nazwa konta GitHub, ale nazwa użytkownika może być dowolna)

Bu stosując curl -H "Authorization: token MY_TOKEN_NUMBERS"zalecane przez ElpieKay , całkowicie ominąć konieczność zapewnienia „nazwę użytkownika”. PAT (Personal Dostęp Reklamowe) wystarcza na GitHub do uwierzytelnienia.

Wszystko, co sshma w sobie znak „ ” (jak ~/.ssh/id_rsa.pub), ma zastosowanie tylko do adresu URL SSH ( [email protected]:<me>/<myRepo>) i nie ma nic wspólnego z curlpoleceniami opartymi na HTTPS .
SSH i tak nie będzie dotyczyło api.github.compołączeń, o czym wspomniałem w 2013 roku .