Contributing to multiple accounts using HTTPS and personal access tokens
Alternatively, if you want to use the HTTPS protocol for both accounts, you can use different personal access tokens for each account by configuring Git to store different credentials for each repository.
-
Öffne das Terminal.
-
Um die Verwendung einer Anmeldeinformationsverwaltung zu bestätigen, gib den folgenden Befehl ein, und beachte die Ausgabe.
Shell git config --get credential.helper
git config --get credential.helper -
Wenn die Ausgabe bestätigt, dass du einen Anmeldeinformations-Manager verwendest, deaktiviere die gespeicherten Anmeldeinformationen für den Anmeldeinformations-Manager.
-
Wenn die Ausgabe nicht den Namen eines Anmeldeinformations-Managers enthält, ist kein Anmeldeinformations-Manager konfiguriert, und du kannst mit dem nächsten Schritt fortfahren.
-
If the output is
osxkeychain, you're using the macOS keychain. To clear the credentials, you can use the credential helper on the command line:$ git credential-osxkeychain erase host=github.com protocol=https > [Press Return] > -
Wenn die Ausgabe
managerlautet (odermanager-corein früheren Versionen), verwenden Sie den Git Anmeldeinformationsverwaltung. Um die Anmeldeinformationen zu löschen, führe den folgenden Befehl aus.Shell echo "protocol=https\nhost=github.com" | git credential-manager erase
echo "protocol=https\nhost=github.com" | git credential-manager erase
-
-
Gib den folgenden Befehl ein, um Git zum Zwischenspeichern von Anmeldeinformationen für die vollständige Remote-URL jedes Repositorys zu konfigurieren, auf das du auf GitHub zugreifst.
Shell git config --global credential.https://github.com.useHttpPath true
git config --global credential.https://github.com.useHttpPath true -
Erstelle für jedes deiner Konten ein dediziertes personal access token (classic) mit
repo-Bereich. Erstelle alternativ für jedes deiner Konten und für jede Organisation, deren Mitglied du bist, ein fine-grained personal access token, das auf die gewünschten Repositorys zugreifen kann und Lese- und Schreibberechtigungen für Repositoryinhalte hat. Weitere Informationen finden Sie unter Verwalten deiner persönlichen Zugriffstoken. -
Wenn du Git zum ersten Mal zum Klonen eines Repositorys oder zum Zugreifen auf Daten in einem bereits geklonten Repository verwendest, fordert Git dich zur Eingabe von Anmeldeinformationen auf. Gib ein personal access token für das Konto mit Zugriff auf das Repository an.
Git speichert dein personal access token basierend auf der vollständigen Remote-URL des Repositorys zwischen, und du kannst mit dem richtigen Konto auf GitHub.com zugreifen und dort Repositorydaten schreiben.
-
Open Git Bash.
-
Um die Verwendung einer Anmeldeinformationsverwaltung zu bestätigen, gib den folgenden Befehl ein, und beachte die Ausgabe.
Shell git config --get credential.helper
git config --get credential.helper -
Wenn die Ausgabe bestätigt, dass du einen Anmeldeinformations-Manager verwendest, deaktiviere die gespeicherten Anmeldeinformationen für den Anmeldeinformations-Manager.
- Wenn die Ausgabe nicht den Namen eines Anmeldeinformations-Managers enthält, ist kein Anmeldeinformations-Manager konfiguriert, und du kannst mit dem nächsten Schritt fortfahren.
- Wenn die Ausgabe
managerlautet (odermanager-corein früheren Versionen), verwenden Sie den Git Anmeldeinformationsverwaltung. Um die Anmeldeinformationen zu löschen, führe den folgenden Befehl aus.
Shell echo "protocol=https`nhost=github.com" | git credential-manager erase
echo "protocol=https`nhost=github.com" | git credential-manager erase-
If the output is
wincred, you're using the Windows Credential Manager. To clear the credentials, enter the following command.Shell cmdkey /delete:LegacyGeneric:target=git:https://github.com
cmdkey /delete:LegacyGeneric:target=git:https://github.com
-
Gib den folgenden Befehl ein, um Git zum Zwischenspeichern von Anmeldeinformationen für die vollständige Remote-URL jedes Repositorys zu konfigurieren, auf das du auf GitHub zugreifst.
Shell git config --global credential.https://github.com.useHttpPath true
git config --global credential.https://github.com.useHttpPath true -
Erstelle für jedes deiner Konten ein dediziertes personal access token (classic) mit
repo-Bereich. Erstelle alternativ für jedes deiner Konten und für jede Organisation, deren Mitglied du bist, ein fine-grained personal access token, das auf die gewünschten Repositorys zugreifen kann und Lese- und Schreibberechtigungen für Repositoryinhalte hat. Weitere Informationen finden Sie unter Verwalten deiner persönlichen Zugriffstoken. -
Wenn du Git zum ersten Mal zum Klonen eines Repositorys oder zum Zugreifen auf Daten in einem bereits geklonten Repository verwendest, fordert Git dich zur Eingabe von Anmeldeinformationen auf. Gib ein personal access token für das Konto mit Zugriff auf das Repository an.
Git speichert dein personal access token basierend auf der vollständigen Remote-URL des Repositorys zwischen, und du kannst mit dem richtigen Konto auf GitHub.com zugreifen und dort Repositorydaten schreiben.
-
Öffne das Terminal.
-
Um die Verwendung einer Anmeldeinformationsverwaltung zu bestätigen, gib den folgenden Befehl ein, und beachte die Ausgabe.
Shell git config --get credential.helper
git config --get credential.helper -
Wenn die Ausgabe bestätigt, dass du einen Anmeldeinformations-Manager verwendest, deaktiviere die gespeicherten Anmeldeinformationen für den Anmeldeinformations-Manager.
- Wenn die Ausgabe nicht den Namen eines Anmeldeinformations-Managers enthält, ist kein Anmeldeinformations-Manager konfiguriert, und du kannst mit dem nächsten Schritt fortfahren.
- Wenn die Ausgabe
managerlautet (odermanager-corein früheren Versionen), verwenden Sie den Git Anmeldeinformationsverwaltung. Um die Anmeldeinformationen zu löschen, führe den folgenden Befehl aus.
Shell echo "protocol=https\nhost=github.com" | git credential-manager erase
echo "protocol=https\nhost=github.com" | git credential-manager erase -
Gib den folgenden Befehl ein, um Git zum Zwischenspeichern von Anmeldeinformationen für die vollständige Remote-URL jedes Repositorys zu konfigurieren, auf das du auf GitHub zugreifst.
Shell git config --global credential.https://github.com.useHttpPath true
git config --global credential.https://github.com.useHttpPath true -
Erstelle für jedes deiner Konten ein dediziertes personal access token (classic) mit
repo-Bereich. Erstelle alternativ für jedes deiner Konten und für jede Organisation, deren Mitglied du bist, ein fine-grained personal access token, das auf die gewünschten Repositorys zugreifen kann und Lese- und Schreibberechtigungen für Repositoryinhalte hat. Weitere Informationen finden Sie unter Verwalten deiner persönlichen Zugriffstoken. -
Wenn du Git zum ersten Mal zum Klonen eines Repositorys oder zum Zugreifen auf Daten in einem bereits geklonten Repository verwendest, fordert Git dich zur Eingabe von Anmeldeinformationen auf. Gib ein personal access token für das Konto mit Zugriff auf das Repository an.
Git speichert dein personal access token basierend auf der vollständigen Remote-URL des Repositorys zwischen, und du kannst mit dem richtigen Konto auf GitHub.com zugreifen und dort Repositorydaten schreiben.
Contributing to multiple accounts using SSH and GIT_SSH_COMMAND
If you want to use the SSH protocol for both accounts, you can use different SSH keys for each account. For more information about using SSH, see Herstellen einer Verbindung mit GitHub per SSH.
To use a different SSH key for different repositories that you clone to your workstation, you must write a shell wrapper function for Git operations. The function should perform the following steps.
- Determine the repository's full name with owner, using a command such as
git config --get remote.origin.url. - Choose the correct SSH key for authentication.
- Modify
GIT_SSH_COMMANDaccordingly. For more information aboutGIT_SSH_COMMAND, see Environment Variables in the Git documentation.
For example, the following command sets the GIT_SSH_COMMAND environment variable to specify an SSH command that uses the private key file at PATH/TO/KEY/FILE for authentication to clone the repository named OWNER/REPOSITORY on GitHub.com.
GIT_SSH_COMMAND='ssh -i PATH/TO/KEY/FILE -o IdentitiesOnly=yes' git clone git@github.com:OWNER/REPOSITORY
GIT_SSH_COMMAND='ssh -i PATH/TO/KEY/FILE -o IdentitiesOnly=yes' git clone git@github.com:OWNER/REPOSITORY
Next steps
For reference information, see Referenz zum persönlichen Konto.