Как сделать git push с токеном личного доступа? Я получаю сообщение об ошибке «неверный refspec»
У меня есть сценарий, который нужно отправить в мое репо:
cd /pathtomyrepo
git fetch origin
git merge origin/master
git add .
git status
echo -n "Enter the Description for the Change: " [Minor Update]
read CHANGE_MSG
git commit -m "${CHANGE_MSG}"
git push --force-with-lease origin master
Недавно он начал выдавать следующую ошибку на последнем шаге после ввода своих учетных данных:
remote: Support for password authentication was removed on August 13, 2021. Please use a personal access token instead.
Итак, я пошел и создал PAT, я даже установил GCM Core. Но когда я вернулся и снова попытался сделать последний шаг с моим новым токеном доступа, следующим образом:
sudo git push --force-with-lease origin master https://<myPAT>@github.com/scstraus/home-assistant-config.git
Получаю следующее:
invalid refspec 'https://<myPAT>@github.com/scstraus/home-assistant-config.git'
Если я попробую это:
sudo git push --force-with-lease origin master https://scstraus:<myPAT>@github.com/scstraus/home-assistant-config.git
Я получаю это:
error: src refspec https://scstraus does not match any.
Я пытался:
sudo git push --force-with-lease origin master
который снова дал мне нормальный запрос пароля
Username for 'https://github.com': scstraus
Password for 'https://scstraus@github.com':
remote: Support for password authentication was removed on August 13, 2021. Please use a personal access token instead.
remote: Please see https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/ for more information.
fatal: Authentication failed for 'https://github.com/scstraus/home-assistant-config/'
git remote -v
дает мне:
origin https://github.com/scstraus/home-assistant-config (fetch)
origin https://github.com/scstraus/home-assistant-config (push)
Еще кое-что, что я пытался заставить работать:
git remote add origin https://<myPAT>@github.com/scstraus/home-assistant-config
который дал мне:
fatal: remote origin already exists.
а также
curl -u scstraus:myPAT https://api.github.com/scstraus
что дает мне:
{
"message": "API rate limit exceeded for user ID 7644023.",
"documentation_url": "https://docs.github.com/rest/overview/resources-in-the-rest-api#rate-limiting"
}
Кто-нибудь знает, что я здесь делаю не так?
1 ответ
Хорошо, возвращаюсь, чтобы ответить на свой вопрос. Моя проблема заключалась в том, что я еще не настроил должным образом хранилище учетных данных. Приведенные ниже документы разобрали меня, и теперь я наконец могу снова нажать на PAT. После правильной настройки в исходный сценарий не потребовалось никаких изменений.
https://github.com/microsoft/Git-Credential-Manager-Core/blob/main/docs/linuxcredstores.md