автоматическая аутентификация github с помощью токенов личного доступа не работает

#git #github #github-cli #personal-access-token

#git #github #github-cli #personal-access-token

Вопрос:

Я следовал приведенному здесь объяснению по настройке автоматической аутентификации github в моем CLI (в Linux, Ubuntu). В частности, я выполнил приведенную здесь команду:

gh auth login

И тогда я ответил Github.com , да, HTTPS и мой токен аутентификации для подсказок.

Похоже, это работает: в нем указаны « Configured git protocol » и « Logged in as ... «.

Однако, когда я затем пишу git clone <myrepo> , он снова запрашивает у меня имя пользователя и пароль.

Что я делаю не так? Насколько я понимаю gh aut login , предполагается, что команда не позволяет мне вводить данные для входа каждый раз.

Комментарии:

1. @dan1st, я понимаю это, но сайт, на который я ссылался, гласит: «GitHub CLI автоматически сохранит ваши учетные данные Git для вас, когда вы выберете HTTPS в качестве предпочтительного протокола для операций Git». Поэтому я предполагаю, что gh выполняет некоторую настройку git за кулисами, по крайней мере, если он работает правильно. Если нет, что мне следует сделать для входа в систему?

2. @dan1st, также обратите внимание, что заголовок этой страницы — «Кэширование ваших учетных данных GitHub в Git»., и мотивация такова: «Вместо того, чтобы вручную вводить свой PAT для каждой операции HTTPS Git, вы можете кэшировать свой PAT с помощью Git-клиента».

Ответ №1:

В моем случае это было решено путем добавления в конце файла ~/.gitconfig следующего:

 [credential "https://github.com"]
    helper = 
    helper = !/snap/bin/gh auth git-credential
 

Измените /snap/bin/gh своим реальным путем (я видел, что у других он есть в /usr/bin/gh)

Комментарии:

1. Спасибо, что поделились этим! Я не понимаю, почему команда GH этого не делает, но это очень помогло.

2. сработало для меня (также установлено с помощью snap)

Ответ №2:

найдено в документации командной строки Github:

gh auth login после запуска выполните эту команду

 gh auth setup-git