Jeśli w systemie Windows i użytkownik Git for Windows i manager
do zarządzania poświadczeniami (inaczej Git-Credential-Manager-for-Windows
Link ), problem polega na tym, że nie ma łatwego sposobu przełączania się między użytkownikami podczas wypychania do GitHub za https
pomocąOAuth
tokenów.
Powodem jest to, że token jest przechowywany jako:
- Adres internetowy:
git:https://github.com
- Nazwa Użytkownika:
Personal Access Token
- Hasło:
OAuth_Token
Odmiany adresu URL w programie Internet Address
nie działają, na przykład:
git:https://username@github.com
git:https://github.com/username
- ...
Rozwiązanie: przestrzenie nazw . Można to znaleźć w szczegółach konfiguracji Git-Credential-Manager-for-Windows
:
Cytując z tego:
przestrzeń nazw
Ustawia przestrzeń nazw dla przechowywanych poświadczeń.
Domyślnie GCM używa przestrzeni nazw „git” dla wszystkich przechowywanych danych logowania, ustawienie tej wartości konfiguracyjnej umożliwia kontrolowanie przestrzeni nazw używanej globalnie lub dla każdego hosta.
git config --global credential.namespace name
Teraz zapisz swoje poświadczenia w Menedżerze poświadczeń systemu Windows jako:
- Adres internetowy:
git.username:https://github.com
- Nazwa Użytkownika:
Personal Access Token
- Hasło:
OAuth_Token
Zauważ, że zmieniliśmy: git
-> git.username
(gdzie zmieniaszusername
swoją rzeczywistą nazwę użytkownika lub ze względu na to, na cokolwiek chcesz jako unikalny identyfikator)
Teraz w repozytorium, w którym chcesz użyć określonego wpisu, wykonaj:
git config credential.namespace git.username
(Ponownie ... zastąp username
żądaną wartością)
Twoja .git/config
wola będzie teraz zawierać:
[credential]
namespace = git.username
Zrobione! Właściwe dane uwierzytelniające zostaną pobrane ze sklepu poświadczeń systemu Windows.
To oczywiście nie zmienia, który użytkownik / e-mail przesyła. W tym celu musisz skonfigurować zwykłe user.name
iuser.email
git config --global user.name her_username
) przed pchaniem