Как сделать 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

Другие вопросы по тегам