Если под Windows и пользователем Git для Windows и managerдля управления учетными данными (он же Git-Credential-Manager-for-Windows Link ), проблема заключается в том, что нет простого способа переключаться между пользователями при переходе на GitHub с httpsиспользованием OAuthтокенов.
Причина в том, что токен хранится как:
- Интернет-адрес:
git:https://github.com
- Имя пользователя:
Personal Access Token
- Пароль:
OAuth_Token
Варианты URL в Internet Addressне работают, например:
git:https://username@github.com
git:https://github.com/username
- ...
Решение: пространства имен . Это находится в деталях для конфигурации Git-Credential-Manager-for-Windows:
Цитирую из этого:
Пространство имен
Устанавливает пространство имен для сохраненных учетных данных.
По умолчанию GCM использует пространство имен «git» для всех хранимых учетных данных, установка этого значения конфигурации позволяет контролировать пространство имен, используемое глобально или для каждого хоста.
git config --global credential.namespace name
Теперь сохраните свои учетные данные в диспетчере учетных данных Windows как:
- Интернет-адрес:
git.username:https://github.com
- Имя пользователя:
Personal Access Token
- Пароль:
OAuth_Token
Обратите внимание, что мы изменили: git-> git.username(где вы меняете usernameсвое действительное имя пользователя или ради него на любое другое, которое вы хотите использовать в качестве уникального идентификатора)
Теперь внутри репозитория, в котором вы хотите использовать конкретную запись, выполните:
git config credential.namespace git.username
(Опять же ... замените usernameна желаемое значение)
Ваша .git/configтеперь будет содержать:
[credential]
namespace = git.username
И вуаля! Правильные учетные данные будут извлечены из хранилища учетных данных Windows.
Это, конечно, не меняет, какой пользователь / электронная почта подталкивает. Для этого вам нужно настроить обычный user.nameиuser.email
git config --global user.name her_username) до нажатия