Se no Windows e no usuário Git for Windows e no manager
para gerenciar as credenciais (também conhecido como Git-Credential-Manager-for-Windows
Link ), o problema é que não há uma maneira fácil de alternar entre os usuários ao passar para o GitHub https
usandoOAuth
tokens.
O motivo é que o token é armazenado como:
- Endereço de internet:
git:https://github.com
- Nome do usuário:
Personal Access Token
- Senha:
OAuth_Token
Variações do URL em Internet Address
não funcionam, por exemplo:
git:https://username@github.com
git:https://github.com/username
- ...
A solução: namespaces . Isso é encontrado nos detalhes para a configuração do Git-Credential-Manager-for-Windows
:
Citando a partir dele:
namespace
Define o espaço para nome das credenciais armazenadas.
Por padrão, o GCM usa o espaço para nome 'git' para todas as credenciais armazenadas. A definição desse valor de configuração permite o controle do espaço para nome usado globalmente ou por host.
git config --global credential.namespace name
Agora, armazene sua credencial no Windows Credential Manager como:
- Endereço de internet:
git.username:https://github.com
- Nome do usuário:
Personal Access Token
- Senha:
OAuth_Token
Observe que nós mudamos: git
-> git.username
(onde você alterausername
para o seu nome de usuário real ou para o efeito, para o que quiser como identificador exclusivo)
Agora, dentro do repositório em que você deseja usar a entrada específica, execute:
git config credential.namespace git.username
(Novamente ... substitua username
pelo valor desejado)
Sua .git/config
vontade agora contêm:
[credential]
namespace = git.username
Et voilá! A credencial correta será extraída do Windows Credential Store.
Isso, é claro, não muda qual usuário / email está enviando. Para isso você tem que configurar o habitual user.name
euser.email
git config --global user.name her_username
) antes de empurrar