是否有可能在每个主机的基础上设置Git凭据?



我的学校有自己的GitLab实例,我希望Git在该实例上提交时使用我的真实姓名和学生电子邮件。在其他地方,我想使用我的标准用户名和电子邮件。在每个回购的基础上设置这个是不可行的,因为我需要一周创建多个回购。

首先,user.nameuser.email不是凭证;它们对认证没有任何影响。前者通常不是用户名。它的目的是作为一个个人的名字(也就是类似于"Pat Doe")。

不可能在每个主机上设置它们,因为这些值是在提交时应用的,而不是在推送时应用的。在提交时设置的远程不一定会在您推送时保持相同,或者您根本没有指定任何远程。在Git列表中有一个允许这样做的提议,但是它有一些问题,而且还不知道它是否会被采纳。

但是,您可以根据.git目录的位置将文件包含到配置中。例如,您可以像这样包含单独的配置文件:

[user]
name = "Pat Doe"
email = patdoe@example.com
[includeIf "gitdir:~/checkouts/school/**"]
path = ~/.config/git/config-school

,然后在~/.config/git/config-school中包含您的学校的值。只要你把你的学校的克隆在~/checkouts/school,事情就会正常工作。

相关内容

  • 没有找到相关文章

最新更新