Here is the problem I run into.
First of all, I'm working on several different projects.
I've got two different github accounts, and after setting up one of them and successfully pushing a repo to it, I needed to commit/push the other repo to the second account which got me to the exact problem.
How do I switch between these two accounts using https way and not ssh?
P.S: I'm on Mac.
I've tried to change git config global/local user names and emails, but it didn't work out. I keep getting the same error which is:
" remote: Permission to name/repo.git denied to User.
fatal: unable to access 'repos address' : The requested URL returned error: 403".
You will need to use different ssh keys.
Read this full documents and follow the steps.
create different public key
create different ssh key according the article Mac Set-Up Git
$ ssh-keygen -t rsa -C "email@example.com"
for example, 2 keys created at:
Add these two keys to the ssh-agent:
$ ssh-add ~/.ssh/id_rsa_activehacker $ ssh-add ~/.ssh/id_rsa_jexchan you can delete all cached keys before $ ssh-add -D
check your keys
$ ssh-add -l
Modify the ssh config
$ cd ~/.ssh/ $ touch config $ subl -a config
Add the keys to the config file:***
#activehacker account Host github.com-activehacker HostName github.com User git IdentityFile ~/.ssh/id_rsa_activehacker #jexchan account Host github.com-jexchan HostName github.com User git IdentityFile ~/.ssh/id_rsa_jexchan
Clone you repo and modify your Git config
# clone your repo git clone firstname.lastname@example.org:activehacker/gfs.git gfs_jexchan cd gfs_jexchan and modify git config $ git config user.name "jexchan" $ git config user.email "email@example.com" $ git config user.name "activehacker" $ git config user.email "firstname.lastname@example.org" # or you can have global git config $ git config --global user.name "jexchan" git config --global user.email "email@example.com"
push your code
# add the code and commit it git add . git commit -m "your comments" # push the code to the remote server git push