在Git中使用两个或更多User.Name有什么用。

时间:2011-12-01 05:16:47

标签: git

我是Git的新手,我已经开始使用免费在线book学习Git了。我很少有人怀疑:

我已使用此命令设置我的Git:

$ git config --global user.name "Anto"

后来我刚刚使用了这个命令:

$ git config user.name "anto aravinth"

(没有--global选项)

现在当我使用以下命令运行时:

$ git config --list

我得到的输出为:

user.name=Anto
user.email=anto.aravinth.cse@gmail.com
push.default=matching
color.status=auto
color.branch=auto
core.repositoryformatversion=0
core.filemode=true
core.bare=false
core.logallrefupdates=true
user.name=anto aravinth

在上面的命令中,我可以看到两个user.name字段,其值分别为antoanto aravinth。那么这里有两个user.name的意思吗?允许同一系统上的多个用户或其他什么用户?因为我是新手,如果答案很简单就会很好。

提前致谢。

2 个答案:

答案 0 :(得分:4)

git config man page中所述:

  • GIT_AUTHOR_NAMEGIT_COMMITTER_NAME等环境变量将覆盖本地配置(当前仓库中的配置)
  • 本地配置将覆盖全局配置($HOME/.gitconfig中的配置,假设您已经定义了一个环境变量HOME,知道它在Windows上没有默认定义)
  • 全局配置将覆盖系统配置(git安装目录中的配置)

请注意git config --list --local可能有多条错误消息:

fatal: unable to read config file '.git/config': No such file or directory

(如果在git repo目录之外完成)

error: unknown option local

(如果使用git1.7.1或更少的在git repo之外运行,如git-dropbox ticket所示。solution忽略了错误消息:< / p>

 DROPBOX_REPO=`git config --local dropbox.repo 2>/dev/null`

答案 1 :(得分:2)

首先列出全局配置选项,然后列出本地配置选项。如果你运行

git config --list --global
git config --list --local

您应该看到user.name每个只列出一次。后面的配置选项(本地配置选项)覆盖全局配置选项。