出于某种原因,当我尝试为我的git帐户设置user.name时,我收到"key user.name的多个值"的错误.如何将其设置为单个名称?
mb2*_*b21 106
如果您只想重置所有这些:
git config --global --replace-all user.email "new@mail.com"
Run Code Online (Sandbox Code Playgroud)
Von*_*onC 46
更新(2012年12月)
git1.8.1rc1现在以不同的方式运行:
"git config --get"用于诊断同一个配置文件中同一个变量的多个定义是否存在错误,但它现在应用了内部配置逻辑使用的"最后一个胜利"规则.
严格地说,这可能是一个API回归,但预计在实践中没有人会注意到它.
原始答案(2010年11月)
git配置手册页提到:
变量名称不区分大小写,只允许使用字母数字字符和 - .
给定变量可以有多个值; 我们说那个变量是多值的.
实际上,这样的配置设置(具有多个可能的值)被称为多变量
正如Jefromi建议的那样,请参阅3个配置文件中的哪一个,您有多user.name
行.
您可以像这样查询多个值:
git config --local --get-all user.name #local repo git config file)
git config --global --get-all user.name #user config file)
git config --system --get-all user.name #system git config file)
Run Code Online (Sandbox Code Playgroud)
user.name
需要修复一个回答多个值的配置文件.
来自评论:
检查文件"本地","全局"和"设置"我只能
user.name
在全球看到一个.
但git config --list
和git config --get-all user.name
给它两次我
正如我在这里提到的Git 2.8(2016年3月),您可以使用(查看所有设置:
git config -l --show-origin
Run Code Online (Sandbox Code Playgroud)
您可以看到重复设置的位置(本地,全局,系统),您可以使用git config [--local/--global/--system] --replace-all key value
,如mb21的答案.
Cas*_*bel 12
您应该检查~/.gitconfig
(您的用户全局配置)以及.git/config
相关存储库(特定于repo的配置)的内容.您应该在其中name
一个user
部分的一个部分下看到两行.(它也可能是一个文件中的两个独立的用户部分.)只需删除你不想要的那个,你应该好好去.
您也可以直接设置它,git config --global user.name "Desired name"
如果您希望它是一个全局设置(可能是这种情况),或者相同的减去--global
特定于repo的设置 - 但最好是检查文件并自己找到罪魁祸首,制作确定你知道你拥有什么.特定于回购的那个将覆盖全局的一个.理想情况下,您应该全局设置您的名称,并且只在项目中覆盖它有充分的理由.
您可以手动更改/编辑github的用户名和电子邮件
转到您的应用程序目录
查看所有隐藏文件...在那里转到.git
隐藏文件夹
打开文件配置文件
它会显示一些像
[user]
name = =
name = =
email = =
Run Code Online (Sandbox Code Playgroud)
用那些替换那些
[user]
name = username
email = user@test.com
Run Code Online (Sandbox Code Playgroud)
要调试此类事情,您可以使用以下命令:
git config --list --show-origin
Run Code Online (Sandbox Code Playgroud)
它显示了每个配置条目的原始文件。
带有重复core.autocrlf
和不需要的C:\\ProgramData/Git/config
文件的示例输出:
$ git config --list --show-origin
file:"C:\\ProgramData/Git/config" core.symlinks=false
file:"C:\\ProgramData/Git/config" core.autocrlf=true
file:"C:\\ProgramData/Git/config" core.fscache=true
file:"C:\\ProgramData/Git/config" color.diff=auto
file:"C:\\ProgramData/Git/config" color.status=auto
file:"C:\\ProgramData/Git/config" color.branch=auto
file:"C:\\Program Files\\Git\\mingw64/etc/gitconfig" diff.astextplain.textconv=astextplain
file:"C:\\Program Files\\Git\\mingw64/etc/gitconfig" filter.lfs.clean=git-lfs clean -- %f
file:"C:\\Program Files\\Git\\mingw64/etc/gitconfig" filter.lfs.smudge=git-lfs smudge -- %f
file:"C:\\Program Files\\Git\\mingw64/etc/gitconfig" filter.lfs.required=true
file:"C:\\Program Files\\Git\\mingw64/etc/gitconfig" filter.lfs.process=git-lfs filter-process
file:"C:\\Program Files\\Git\\mingw64/etc/gitconfig" credential.helper=manager
file:C:/Users/john.doe/.gitconfig user.name=John Doe
file:C:/Users/john.doe/.gitconfig user.email=john.doe@somemail.com
file:C:/Users/john.doe/.gitconfig core.preloadindex=true
file:C:/Users/john.doe/.gitconfig core.fscache=true
file:C:/Users/john.doe/.gitconfig core.autocrlf=input
file:C:/Users/john.doe/.gitconfig gc.auto=256
file:.git/config core.filemode=false
file:.git/config core.bare=false
file:.git/config core.logallrefupdates=true
file:.git/config core.symlinks=false
file:.git/config core.ignorecase=true
file:.git/config core.autocrlf=input
Run Code Online (Sandbox Code Playgroud)
您可以使用--system
并--global
检查您的 gitconfig 文件所在的位置:
git config --global --list --show-origin
Run Code Online (Sandbox Code Playgroud)
示例输出:
file:C:/Users/john.doe/.gitconfig user.name=John Doe
file:C:/Users/john.doe/.gitconfig user.email=john.doe@somemail.com
file:C:/Users/john.doe/.gitconfig core.preloadindex=true
file:C:/Users/john.doe/.gitconfig core.fscache=true
file:C:/Users/john.doe/.gitconfig core.autocrlf=input
file:C:/Users/john.doe/.gitconfig gc.auto=256
Run Code Online (Sandbox Code Playgroud)
首先看一下配置中的user.names:
git config --list
Run Code Online (Sandbox Code Playgroud)
输出示例:
user.email=abarker@cern.ch
user.name=fiveisgreen
user.github=fiveisgreen
user.name=Anthony
Run Code Online (Sandbox Code Playgroud)
在此示例中,user.name被列出两次。要删除重复项,请执行以下操作:
git config --global --unset user.name
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
39070 次 |
最近记录: |