"fatal: bad numeric config value 'ward' for 'core.safecrlf': invalid unit" 是什么意思?
What does "fatal: bad numeric config value 'ward' for 'core.safecrlf': invalid unit" mean?
当我在终端 (MacOS) 中键入 git init
(或 git help tutorial
)时,我收到此消息:
fatal: bad numeric config value 'ward' for 'core.safecrlf': invalid unit
但是当我使用 git config --list
或 git config user.name
这样的命令时,它可以正常工作。
为什么有些命令有效而有些无效?
core.safecrlf
必须是布尔值(true
、false
或空)或 warn
。要修复您的配置:
git config --global core.safecrlf warn
有你需要的修正:修正 warn
的拼写(你把它当作拼写错误,ward
)。不过,你问题的另一部分确实有答案:
Why do some commands work and others don't?
data在.git/config
或.gitconfig
或其他配置文件中大部分是free-form,一种修改INI file.也就是说,您可以创建自己的包含名称和值的部分和子部分:
[nadin "data"]
why = some questions
创建一个新项目 nadin.data.why
,其值为 some questions
。 Git 不会关心这个设置是否存在,也不关心这个设置是什么 因为 Git 没有 nadin
部分,更不用说 nadin.data
或 nadin.data.why
(至少今天不会,将来也可能不会)。
每个 Git 命令 可以并且确实使用程序 关心的任何设置 。例如,git commit
需要您的 user.name
和 user.email
设置,以便它可以将适当的元数据写入新的提交中。 git branch
命令读取许多 branch.*
设置,并可能为新分支自行创建一些设置。 git remote
命令需要读取大部分 [remote]
部分(各种 remote.*
项); git push
和 git fetch
将读取其中的一些子集。
只有在读取某个值时,使用该值的某些命令才会注意到该值对该特定命令是否有意义.因此 git init
出于某种原因想要使用 core.safecrlf
值,并读取 core.safecrlf
设置的值,然后要求它是“boolean-able”(true
, false
, 0
, 1
, 和空都在这里工作), 或者特殊值 warn
.
git config
命令是创建、读取和写入配置文件的命令,因此在设计上它尽量不依赖配置文件:如果配置文件在之前编写配置文件的程序可以运行,那将是一个问题。这就像要求您先成为某个俱乐部的会员才能加入。所以 git config
不 取决于 core.safecrlf
设置,因此无法告诉您它是否无效。这在设计上有点缺陷,但它意味着你可以使用 git config
来 get 或设置 nadin.data.why
,即使 Git没听说过这样的领域。
当我在终端 (MacOS) 中键入 git init
(或 git help tutorial
)时,我收到此消息:
fatal: bad numeric config value 'ward' for 'core.safecrlf': invalid unit
但是当我使用 git config --list
或 git config user.name
这样的命令时,它可以正常工作。
为什么有些命令有效而有些无效?
core.safecrlf
必须是布尔值(true
、false
或空)或 warn
。要修复您的配置:
git config --global core.safecrlf warn
warn
的拼写(你把它当作拼写错误,ward
)。不过,你问题的另一部分确实有答案:
Why do some commands work and others don't?
data在.git/config
或.gitconfig
或其他配置文件中大部分是free-form,一种修改INI file.也就是说,您可以创建自己的包含名称和值的部分和子部分:
[nadin "data"]
why = some questions
创建一个新项目 nadin.data.why
,其值为 some questions
。 Git 不会关心这个设置是否存在,也不关心这个设置是什么 因为 Git 没有 nadin
部分,更不用说 nadin.data
或 nadin.data.why
(至少今天不会,将来也可能不会)。
每个 Git 命令 可以并且确实使用程序 关心的任何设置 。例如,git commit
需要您的 user.name
和 user.email
设置,以便它可以将适当的元数据写入新的提交中。 git branch
命令读取许多 branch.*
设置,并可能为新分支自行创建一些设置。 git remote
命令需要读取大部分 [remote]
部分(各种 remote.*
项); git push
和 git fetch
将读取其中的一些子集。
只有在读取某个值时,使用该值的某些命令才会注意到该值对该特定命令是否有意义.因此 git init
出于某种原因想要使用 core.safecrlf
值,并读取 core.safecrlf
设置的值,然后要求它是“boolean-able”(true
, false
, 0
, 1
, 和空都在这里工作), 或者特殊值 warn
.
git config
命令是创建、读取和写入配置文件的命令,因此在设计上它尽量不依赖配置文件:如果配置文件在之前编写配置文件的程序可以运行,那将是一个问题。这就像要求您先成为某个俱乐部的会员才能加入。所以 git config
不 取决于 core.safecrlf
设置,因此无法告诉您它是否无效。这在设计上有点缺陷,但它意味着你可以使用 git config
来 get 或设置 nadin.data.why
,即使 Git没听说过这样的领域。