Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git推送多个帐户_Git_Github_Ssh - Fatal编程技术网

Git推送多个帐户

Git推送多个帐户,git,github,ssh,Git,Github,Ssh,我在同一台计算机上使用SSH密钥设置了两个github帐户 我将--global用户名和电子邮件设置为第一个帐户的用户名和电子邮件,然后我在第二个帐户中创建了一个存储库,但当我推送到repo时,提交的用户似乎是与第一个帐户相关的用户,这是由于我使用的全局电子邮件 有没有办法根据所使用的ssh密钥设置user.name和user.email 目前,我删除了全局设置,并将本地设置放在我的回购中,但可能有一种方法可以避免每次创建回购时都设置本地电子邮件。您只需在本地回购中配置第二个帐户的user.na

我在同一台计算机上使用SSH密钥设置了两个github帐户

我将
--global
用户名和电子邮件设置为第一个帐户的用户名和电子邮件,然后我在第二个帐户中创建了一个存储库,但当我推送到repo时,提交的用户似乎是与第一个帐户相关的用户,这是由于我使用的全局电子邮件

有没有办法根据所使用的ssh密钥设置
user.name
user.email


目前,我删除了全局设置,并将本地设置放在我的回购中,但可能有一种方法可以避免每次创建回购时都设置本地电子邮件。

您只需在本地回购中配置第二个帐户的user.name和user.email:

cd /path/to/my/local/repo
git config user.name secondName
git config user.email secondEmail
git add .
git commit -m "commit done with second account"
git push
本地配置将覆盖全局配置


注意:用于推送的ssh密钥或url与用于提交的user.name完全不同。

是的,我知道我可以为本地存储库设置名称和电子邮件,但每次都这样做很无聊。我不知道这是否可行,但仍然应该有办法获取github帐户所用ssh密钥的电子邮件。@BRabbit27我理解,但您只能有一个全局设置。如果它不是正确的,那么您只剩下本地设置,并且它不会被url上下文化。好的,我想我会保持它的原样。取消设置全局设置,然后对每个回购使用本地设置。