Reputation: 241
I have two different github accounts and two repositories. When cloning the repositories I have used the correct username.
But When I want to commit I am not able to choose between the users. It picks up the global git user by default.
Is there a option to choose which credential to use at the point of the commit in SourceTree.
Upvotes: 7
Views: 6656
Reputation: 857
A simple workaround if you have multiple github accounts configured in Sourcetree is:
Upvotes: 1
Reputation: 1183
https://fofxacademy.com/how-to-setup-git-on-your-pc-for-multiple-github-accounts/
Two Simple Steps to Configure Git for Multiple GitHub Accounts on Windows
Enable Windows Credential Manager
git config --list
git config --global credential.helper wincred
Enable WCM for Multiple Credentials
git config --global credential.useHttpPath true
Upvotes: 0
Reputation: 1917
This worked for me on macOS (... only)
Go to Repository > Repository Settings > Remotes and edit the repository path by adding the user name (like https://<user name>@github.com
, by exemple https://[email protected]/landron/Problems.git
instead of just https://github.com/landron/Problems.git
). Then, at the first push (tentative), SourceTree
will ask for password (and store it to Keychain
if you're on macOS
). I found the idea on the Atlassian support site.
Windows update I did not succeed in doing the same because I did not convince SourceTree
to make/use two accounts in Credentials Manager
: git:https://<user1>@github.com
and git:https://<user2>@github.com
(they can be created manually by "Add a generic credential" in Control Panel\User Accounts\Credential Manager
).
Identification update @Simeon Visser's answer matters (at least) for github statistics (contributions) because github identifies the user by email address (see "The email address used for the commits is associated with your GitHub account." here).
Upvotes: 6
Reputation: 122346
Go to Repository > Repository Settings > Advanced and untick the box "Use global user settings".
You can then configure a different username and email address there. This changes the details used for the commit. You still need to make sure that git has the ability to push to the repository (you can edit the configuration file of that repository to do that).
Upvotes: 0