'Switch user in GitHub CLI

I am using GitHub CLI and MinGit for Windows.

When I logout of GitHub CLI with gh auth logout and log back in with different account by calling gh auth login git config does not change.

When I type git config --global --list the user.name and user.email entries still point to the old account. So when I commit, it looks like the commit was made by my old account.

I know I could type git config --global user.name "username" and change the name but how can I do this correctly with GitHub CLI?

If I cannot do this with GitHub CLI are user.name and user.email the only two entries I need to change to commit as my new account?



Solution 1:[1]

Setting the environmental variable GH_CONFIG_DIR allows you to change where gh cli looks for your authorization/credentials.

This means that you can use a tool like DirEnv to set up a different GitHub authorization in each project/directory.

For example:

cd project_dir/
echo $GH_CONFIG_DIR # likely returns blank
gh auth status # will show you logged in to account 1

export GH_CONFIG_DIR=.config # set GH_CONFIG_DIR to local .config
gh auth status # will now show you not logged in to any account

gh auth login # you can now log in to account 2

Solution 2:[2]

Changing Your Committer Name & Email Globally

ex-:

git config --global user.name "John"
git config --global user.email "[email protected]"

Changing the Author Information Just for the Next Commit

git commit --author="John<[email protected]>"

learn more -: https://www.git-tower.com/learn/git/faq/change-author-name-email/

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Justin Palmer
Solution 2 Kaumadie Kariyawasam