如何使用不同的电子邮件管理git中的多个项目?

时间:2016-10-19 07:07:13

标签: git github gitlab

我在GitHub中有一个使用git config的项目:

git config --global user.email = "abc@gmail.com"
git config --global user.name = "abc"

现在我需要在git lab中托管另一个项目,其中包含不同的电子邮件ID:

my email account is "xyz@gmail.com"

我是否需要在git bash中配置任何内容,我需要执行哪些步骤?

如果我尝试使用相同的帐户,我担心会出现一些问题

我也遇到了这个错误

权限被拒绝(publickey)。 致命的:无法从远程存储库读取。

请确保您拥有正确的访问权限 存储库存在。

任何人都可以帮助我吗

2 个答案:

答案 0 :(得分:3)

对于您的新回购,您需要做的就是在repo文件夹中执行以下操作:

git config user.email xyz@gmail.com
# or
git config --replace-all user.email xyz@gmail.com

本地配置将覆盖全局配置,您的提交将拥有正确的电子邮件。

注意:这与GitLab上的身份验证无关。

commentedOP javailike,如果网址是带有密码短语的ssh:

eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_rsa 

答案 1 :(得分:1)

您只能为此存储库设置不同的用户名和电子邮件。这些设置将覆盖全局设置。你所要做的就是:

cd <working directory path>
git config --local user.email = "xyz@gmail.com"
git config --local user.name = "xyz"

这将更新存储库的.git/config文件。请注意,--local是默认行为,因此您可以省略--local。 有关详细信息,请参阅git-config docs