gpt4 book ai didi

git - Visual Studio git clone 始终对文件使用 LF

转载 作者:太空狗 更新时间:2023-10-29 14:45:37 25 4
gpt4 key购买 nike

我们在这里使用 TFS 2013(版本 12.0.30324.0),我们使用 Visual Studio 2013。我们有一个包含许多 TXT 文件的项目,用于批量插入。

当使用 Visual Studio 进行克隆时,其中一些文件总是以 LF 行结尾而不是通常的 CRLF 进行克隆。这打破了我们对 eol 非常挑剔的 BULK INSERT。

设置 .gitattributes 没有帮助

设置 git config --global core.autocrlf true 没有帮助

它总是以 LF 终止返回。该问题似乎与文件中某些字符的存在有关。当它们不存在时,Visual Studio 通常会设置 CRLF,但当它们存在时,无论我有什么配置,它都会设置 LF。

重现方法如下:

  1. 创建一个包含以下内容的 test.txt 文件 Associação de países da África, Caribe e Pacífico 末尾有一个 CRLF 字符
  2. gid 添加、提交并推送到 TFS
  3. 从磁盘中删除项目
  4. git 克隆项目
  5. test.txt 现在有一个 LF 结尾而不是原来的 CRLF

无论如何,这总是会返回一个带有 LF 的文件。

带有 CLI 的 MSYSGIT 表现正常,它克隆了带有常规 CRLF 结尾的文件,问题似乎出在 Visual Studio 2013 git 客户端上。我可以报告说,Visual Studio 2015 也会发生同样的情况。

它会是什么?我真的不知道我能做些什么来解决这个问题,我相信这可能是 Visual Studio 中使用的 git 客户端的错误。

最佳答案

这是二进制检测中的一个错误,我们错误地确定具有一些非 ASCII UTF-8 字符的文件是二进制文件。这个错误是 fixed in libgit2 ,这是我们在 Visual Studio 中支持 Git 的基础。这应该在即将推出的 VS 2013 Update 5 和 Visual Studio 2015 中得到修复。

由于我们将文件检测为二进制文件,因此强制行尾为特定类型是行不通的。 (那些只适用于文本文件。)

不幸的是,这意味着没有已知的解决方法。对于给您带来的不便,我们深表歉意。

关于git - Visual Studio git clone 始终对文件使用 LF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29348078/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com