有没有一种方法,以确定在现有的Git仓库行尾?
如果我克隆一个现有的存储库我怎么确定哪些core.autocrlf曾通过创造者?
我仍不确定什么对于core.autocrlf例如,在Windows中的最佳设置(因为有多个观点: 与代码分发的git配置或https://help.github.com/articles/dealing-with-line-结局 )
奖金的问题:你能确定是否回购已通过所有提交混行尾(由错误core.autocrlf设置)窗口(使用标准工具)?
有没有一种方法,以确定在现有的Git仓库行尾?
如果我克隆一个现有的存储库我怎么确定哪些core.autocrlf曾通过创造者?
我仍不确定什么对于core.autocrlf例如,在Windows中的最佳设置(因为有多个观点: 与代码分发的git配置或https://help.github.com/articles/dealing-with-line-结局 )
奖金的问题:你能确定是否回购已通过所有提交混行尾(由错误core.autocrlf设置)窗口(使用标准工具)?
要检查哪些行结束在仓库中(不管你的实际上是致力于core.autocrlf
设置),请尝试以下操作:
git grep -I --files-with-matches --perl-regexp '\r' HEAD
( -I
意味着二进制文件不应该被看。)
我仍然坚持认为,设置( core.autocrlf
)以false
,因为我“的解释分发与代码git的配置 ”,你提了,使用eol
gitattributes指令进行更细粒度的控制。
话虽这么说,检测混线的结尾:
core.autocrlf
到true
git clone
你的回购 git diff
:如果diff文件只是你克隆后可见......一些自动EOL转换只发生在工作树。 更新2016(4年后): 一个更现代的方式来检测EOL的变化 :
git -c color.diff.whitespace="red reverse" diff -R -- afile
最好的行尾的做法是在这里: https://stackoverflow.com/a/10855862
为了确定在现有的Git仓库行的结尾:
core.autocrlf
到false
,所以在传输文件,也不会改变文件结尾。 git clone
你的前回购。 在新目录中。 你不能确定什么core.autocrlf用来创建者,因为它是本地配置,除了回购有.gitattributes文件。
在Windows中,如果你不使用它的默认设置.gitattributes只使用core.autocrlf如此。
在Windows中,只需运行从命令提示符下面的命令:
git config --list
这将列出所有的Git配置变量。
如果你想获得个人配置设置(例如用于core.autocrlf),运行以下命令在Windows命令提示符:
git config --get core.autocrlf
这要么给你一个“ true
”或“ false
”值。
如果你想改变这个,编辑C:\ProgramData\Git\config
文件,更改从值false
到true
注意:这仅适用于Windows操作系统。