Git:设置本地user.name和user。电子邮件不同的每个回购

我目前正在做2个项目,当我推送给他们时,期望我用不同的数据配置我的本地用户名和电子邮件。为此,我一直在更新我的配置,比如:

git config --local user.email "namelastname@domain.example"

由于它们是不同的存储库,是否有办法为每个存储库定义一个本地电子邮件?

也许在.gitconfig?

172028 次浏览

对于一个回购,进入相关的回购DIR,然后:

git config user.name "Your Name Here"
git config user.email your@email.example

对于(全局)默认电子邮件(在~/.gitconfig中配置):

git config --global user.name "Your Name Here"
git config --global user.email your@email.example

你可以检查你的Git设置: git config user.name && git config user.email < / p >

如果你在一个特定的repo中,你设置了一个新的用户/配置(不同于全局),那么它应该显示本地配置,否则它将显示你的全局配置。

你可以在终端上打印确认:

  1. 全球用户:git config --global user.name
  2. 本地用户:git config user.name

我通常倾向于为我的公司项目和个人项目保留不同的名称/电子邮件(在github上)

在需要指定用户/电子邮件的git repo中运行以下命令

git config user.name <user-name>
git config user.email <user-email>

...或者只是编辑.git\config文件并在某处添加这三行:

[user]
name = YourName
email = your@email.com

对我来说,一个可靠的技巧是同时设置全局配置credential.username选项和本地配置选项。他们将要求输入密码进行身份验证。这甚至适用于Mac上的Git凭据管理器。有关更多信息,请参阅:https://docs.github.com/en/get-started/getting-started-with-git/caching-your-github-credentials-in-git。所以你可以为两个不同的GitHub账户缓存至少两个不同的密码。

它可以通过以下命令实现,

    git config --local credential.helper ""
git push origin master

它要求用户名和密码为当前的回购。