我有两个Github帐户:一个用于在用户电子邮件下创建的作品:rperez@email1.com
,另一个用于用户电子邮件下的个人项目:reynierpm@email2.com
我通过运行以下命令将rperez@email1.com
设置为全局:
git config --global user.name "rperez"
git config --global user.email "rperez@email1.com
我需要在一个工作中的个人项目中工作,所以我克隆了存储库,现在我正在尝试设置第二个用户名作为提交到这个个人存储库的那个,所以我运行了以下命令:
git config user.name "reynierpm"
git config user.email "reynierpm@email2.com
出于某种原因,一旦我尝试将某些东西推到回购中,我就收到了这个错误:
Push failed
Failed with error: ERROR: Permission to reypm/php55-dev.git denied to rperez.
Could not read from remote repository.
为什么尝试将更改推送为rperez
而不是reynierpm
?
以下是命令git config -l
的输出,以防有人需要它:
$ git config -l
user.name=rperez
user.email=rperez@email1.com
gc.autodetach=false
core.repositoryformatversion=0
core.filemode=true
core.bare=false
core.logallrefupdates=true
remote.origin.url=git@github.com:reypm/php55-dev.git
remote.origin.fetch=+refs/heads/*:refs/remotes/origin/*
branch.master.remote=origin
branch.master.merge=refs/heads/master
user.email=reynierpm@email2.com
user.name=reynierpm
此设置有什么问题?
注意:@email1.com
和@email2.com
是假域名,仅用于不显示真实地址。
更新#1
按照评论中的建议后,这就是~/.ssh/config
中的内容:
#rperez account
Host github.com-rperez
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa
#reypm account
Host github.com-reypm
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa_reynierpm
这是ls -la ~/.ssh
:
$ ls -la ~/.ssh/
total 32
drwx------. 2 rperez rperez 4096 Sep 27 10:21 .
drwx------. 29 rperez rperez 4096 Sep 27 09:54 ..
-rw-rw-r-- 1 rperez rperez 304 Sep 27 10:30 config
-rw-------. 1 rperez rperez 3243 Sep 21 09:35 id_rsa
-rw-r--r--. 1 rperez rperez 749 Sep 21 09:35 id_rsa.pub
-rw-------. 1 rperez rperez 1675 Sep 27 09:33 id_rsa_reynierpm
-rw-r--r--. 1 rperez rperez 401 Sep 27 09:33 id_rsa_reynierpm.pub
-rw-r--r--. 1 rperez rperez 2039 Sep 26 10:19 known_hosts
最后输出git config -l
:
$ git config -l
user.name=rperez
user.email=rperez@email1.com
gc.autodetach=false
core.repositoryformatversion=0
core.filemode=true
core.bare=false
core.logallrefupdates=true
remote.origin.url=git@github.com:reypm/php55-dev.git
remote.origin.fetch=+refs/heads/*:refs/remotes/origin/*
branch.master.remote=origin
branch.master.merge=refs/heads/master
user.email=reynierpm@email2.com
user.name=Reynier Perez
remote.reypm.url=git@github.com:php55-dev.git
remote.reypm.fetch=+refs/heads/*:refs/remotes/reypm/*
将更改推送到存储库php55-dev
会变成此错误:
Bad owner or permissions on /home/rperez/.ssh/config
fatal: Could not read from remote repository.
这个设置还有什么问题,它是什么?