Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

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?

like image 874
sanitizedUser Avatar asked Jun 16 '26 00:06

sanitizedUser


2 Answers

A new command has been added. You can use the following

gh auth switch

For further information you may check this out https://cli.github.com/manual/gh_auth_switch

like image 183
TheMaroonKnight Avatar answered Jun 20 '26 04:06

TheMaroonKnight


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

like image 34
Justin Palmer Avatar answered Jun 20 '26 03:06

Justin Palmer



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!