【问题标题】:How can I print out the value of a git configuration setting (core.autocrlf) on Windows?如何在 Windows 上打印出 git 配置设置 (core.autocrlf) 的值?
【发布时间】:2010-12-01 07:18:43
【问题描述】:

我正在尝试解决 Windows 上的 CRLF 问题。

如何查看配置设置core.autocrlf 在我的系统上设置的值?

【问题讨论】:

    标签: git newline


    【解决方案1】:

    如果您使用的是 Git Bash:

    git config --get core.autocrlf
    

    对于全局配置:

    git config --global --get core.autocrlf
    

    【讨论】:

    • 它不会为我打印任何东西。如何查看计算值?
    • 如果 git 不打印任何内容,则该属性未设置。这意味着 git 使用默认值。 core.autocrlf 的默认值为 false
    • autocrlf 是 git 中默认设置为 true 的最愚蠢的设置。应该是false!!!
    【解决方案2】:

    你的 git repo 在哪里 ie:public_html do:

    [~/public_html]$ git config -l
    

    这应该列出您对该仓库的整个配置。您也可以始终使用:

    [~/public_html]$ git config -help
    

    这将显示所有列表命令

    【讨论】:

      【解决方案3】:

      如果你想检查你的设置,你可以使用git config --list命令列出Git当时可以找到的所有设置:

      $ git config --list
      user.name=John Doe
      user.email=johndoe@example.com
      color.status=auto
      color.branch=auto
      color.interactive=auto
      color.diff=auto
      ...
      

      您可能会多次看到密钥,因为 Git 从不同文件(例如/etc/gitconfig~/.gitconfig)中读取相同的密钥。在这种情况下,Git 使用它看到的每个唯一键的最后一个值。

      您还可以通过输入 git config <key> 来检查 Git 认为特定键的值是什么:

      $ git config user.name
      John Doe
      

      这里使用documentation

      【讨论】:

        【解决方案4】:

        在 .git 目录中有一个名为 'config' 的文件,其中包含您的设置。这有帮助吗?

        【讨论】:

        • 我期待这是一个全局设置。
        • 那我觉得Chris Missal的回答可以修改为:git config --global --get core.autocrlf
        • 是的。谢谢。
        • @robertlaing:实际上“git config --get core.autocrlf”会从所有配置文件中选择:每个存储库文件.git/config,如果它不存在从每个用户文件%HOME%/.gitconfig(或类似的东西;它在Unix上是~/.gitconfig)(“--global”),最后如果它不存在来自系统范围的文件,它是/etc/gitconfig on Unix ("--system")
        【解决方案5】:

        我不确定您是否将该选项设置为全局,这可以覆盖本地配置。你可以试一试。如果是的话,你就不需要太在意git repo里面的那个了。

        【讨论】:

          【解决方案6】:

          从 git 配置文件中读取特定值,

          git config --system –get core.autocrlf

          从系统级别设置的 Git 配置文件中读取值core.autocrlf

          git有3级配置文件:

          1) 本地(使用--local)

          2) 系统(使用--system)

          3) 全局(使用--global)

          Q) 如果我跳过提及文件的级别会发生什么?

          如果是读取操作,则会在所有3个配置文件中查找值。

          git config –get core.autocrlf

          Q) 如果它不打印任何东西是什么意思?

          这只是意味着,没有设置这样的配置。

          Q) 如果在所有 3 个文件中都提到了配置值怎么办?它会显示哪个?

          嗯,最高优先级是 local ,然后是 global ,然后是 system 。有时一个配置变量可以有多个值,比如在本地。在这种情况下,本地配置文件中提到的最后一个值会显示出来。

          Q) 如果我想查看配置变量的所有值怎么办?

          使用--get-all点赞

          git config --local --get-all core.autocrlf

          问)如果我写 git config --get-all core.autocrlf 会发生什么?

          显然您已经跳过写入文件级别,因此在这种情况下它显示for all files and all values mentioned in them for this config variable

          【讨论】:

            猜你喜欢
            • 2014-02-15
            • 2017-01-17
            • 1970-01-01
            • 1970-01-01
            • 2010-11-08
            • 1970-01-01
            • 2014-07-04
            • 2018-04-10
            相关资源
            最近更新 更多