Как использовать SSH для входа в Github и создания нового репозитория в командной строке?
Когда я создаю новый репозиторий Github с помощью команды curl, как показано ниже, он всегда просит меня ввести пароль.
curl -u "$(git config user.name)" https://api.github.com/user/repos -d "{\"name\":\"$1\"}" | grep -q "Bad credentials"
Вот мой вопрос. Как использовать SSH для входа в Github и создания нового репозитория с помощью связки ключей ssh в командной строке?
Ответы
Имейте в виду, что настройки user.name
/ user.email
config не имеют ничего общего с:
- аутентификация (используются только для подтверждения авторства)
- ваша учетная запись GitHub (вы можете установить свое имя пользователя таким же, как имя вашей учетной записи GitHub, но имя пользователя может быть любым, на самом деле)
Используя, curl -H "Authorization: token MY_TOKEN_NUMBERS"
как рекомендовано ElpieKay , вы полностью избавляетесь от необходимости указывать «имя пользователя». PAT (Personal Access Токен) достаточно для GitHub для аутентификации.
Все, что имеет в нем " ssh
" (вроде ~/.ssh/id_rsa.pub
), применимо только к SSH URL ( [email protected]:<me>/<myRepo>
) и не имеет ничего общего с curl
командами на основе HTTPS . Как я уже упоминал в 2013 году,
SSH в api.github.com
любом случае не будет применяться к звонкам .