当前位置: 首页 > 面试题库 >

Windows上的Git:crlf设置是什么意思?

娄浩荡
2023-03-14
问题内容

我不了解git中与CrLf设置相关的复杂性core.autocrlfcore.safecrlf

我正在一个团队中开发一个跨平台项目,希望Windows和Linux开发人员能够一起工作,而无需将git标记的文件仅由于行尾样式而修改。

各种设置是什么意思?选择任何选项会有什么后果?而对我来说,最好的解决方案是什么?

是的,我知道这个问题,那里的答案没有见地,因此无济于事。


问题答案:

的三个值autocrlf

  • true-当内容进入存储库(已提交)时,其行尾将转换为LF;当内容从存储库中出来(被检出)时,行尾将转换为CRLF。通常,这是指无知的Windows用户/编辑者。假设编辑者(或用户)将创建带有CRLF结尾的文件,并且会在看到正常的LF结尾时惊慌失措,但是您想在回购中使用LF结尾,则希望可以覆盖您。不过,事情可能会出错。在链接的问题中有虚假合并冲突的示例以及修改文件的报告。

  • input-当内容进入存储库时,其行尾将转换为LF,但在输出时保持不变。这基本上与处于同一领域true,并假设编辑者实际上可以正确处理LF结尾。您只是在防止意外创建带有CRLF结尾的文件的可能性。

  • false-git根本不处理行尾。由你决定。这是很多人推荐的。使用此设置,如果要弄乱文件的行尾,您将必须意识到这一点,因此合并冲突的可能性要小得多(假设是知情的用户)。对开发人员进行有关如何使用其编辑器/ IDE的教育几乎可以解决这个问题。如果配置正确,我见过的所有为程序员设计的编辑器都可以处理。

请注意,autocrlf这不会影响存储库中 已经
存在的内容。如果您以前使用CRLF结尾来提交内容,它们将保持这种状态。这是避免依赖autocrlf的很好理由;如果一个用户没有设置它,他们可以将带有CRLF结尾的内容添加到存储库中,并且它会一直存在。强制规范化的一种更强方法是使用text属性;auto假设git决定内容为文本(非二进制),则将其设置为给定路径会将其标记为行尾标准化。

一个相关的选项是safecrlf,它基本上只是确保您不会对二进制文件不可逆地执行CRLF转换的一种方法。

我没有处理Windows问题和git的大量经验,因此当然欢迎您提供有关含义/陷阱的反馈。



 类似资料:
  • 问题内容: 我是Android的新手,必须在两个PCB之间建立蓝牙连接。我在API指南中看到了一行代码,但我仍然不清楚它的含义。我想知道是否有人可以帮助我。 这是代码: 我不明白的是! 他们为什么在两者之间放一些东西。我也看过比。这些元素做什么? 问题答案: 这样就形成了通用集。当您声明时: 表示对象应仅包含类型的对象。通常建议使用泛型集合,因为您可以获得类型安全性的直接好处。 Java Coll

  • 问题内容: 在“ Jenkins URL”部分的Jenkins配置页面上,我将此选项设置为“ http://name_of_my_machine.jenkins:8080 / “通常,我通过以下方式打开jenkins:” http:// localhost:8080 / “但是这个新选项确实对我不起作用- 詹金斯(Jenkins)无法打开。那是什么意思呢? 问题答案: Jenkins无法自行确定其

  • 在Apache Tomcat中,参数URIEncoding告诉Tomcat如何解释传入的URI: 编码 这指定在%xx解码URL后用于解码URI字节的字符编码。如果没有规定,将使用ISO-8859-1。 Apache Tomcat 7-HTTP连接器 然而,正如在URL编码Unicode字符的正确方法是什么中所解释的那样,URI中的非ASCII字符始终按照当前标准(RFC 3986和3987)以U

  • 关于std::filesystem::is_regular_file(path),cppreference。com说: 检查给定的文件状态或路径是否对应于与等效的常规文件[…]。 例如,在Linux内核中,文件类型在头文件中声明。下面列出了每种Linux文件类型的类型名和符号名: 插座(S_IFSOCK) 符号链接(S_IFLNK) 常规文件(S_IFREG) 阻止特殊文件(S_IFBLK) 目录

  • BIOS是英文Basic Input/Output System(基本输入/输出系统)的缩写,其程序储存在主板上的EPROM或Flash ROM内,作用是测试装在主板上的部件能否正常工作,并提供驱动程序接口,设定系统相关配备的组态。当你的系统配件与原CMOS参数不符合时,或CMOS参数遗失时,或系统不稳定时,就需要进入BIOS设定程序,以重新配置正确的系统组态。 进入AMI BIOS设定程序 1.

  • 我们所使用的计算机都是由一些硬件设备组成的,而这些硬件设备会由于用户的不同需要而在品牌、类型、性能上有很大差异。例如,对于硬盘,就可能存在容量大小和接口类型等方面的不同,而不同的硬件配置所对应的参数也不同,因此,我们在使用计算机之前,一定要确定它的硬件配置和参数,并将它们记录下来,存入计算机,以便计算机启动时能够读取这些设置,保证系统正常运行。 通常情况下,我们通过设置程序对硬件系统设置参数。由于