我想让git对源代码不区分大小写。反正有没有实现这个目标? (不,我不希望它忽略文件路径中的大小写更改。)
答案 0 :(得分:3)
嗯,当然,有。如果你想挂起自己,git很乐意为你提供足够的绳子 2 一个钩子。 1
Git本身跟踪内容,而不关心内容是什么。大写字母和小写字母被编码为不同的字节,这就是git所知道的。
然而git是非常可扩展的。您可以告诉它在从磁盘读取文件时,在将文件写入磁盘时,在计算它们之间的差异以及合并它们时使用自定义过滤器。
如果要保留大小写并且忽略diff
和merge
中的大小写,则需要实现自定义差异和合并驱动程序。在gitattributes(5)中查找diff
。如果要将所有内容规范化为大写或小写,则需要实现读写过滤器(称为“干净”和“涂抹”)。在gitattributes(5)中查找filter
。而且您必须使用gitattributes机制将其应用于适当的文件。
1 也就是说,我认为这是一个坏主意。大多数编程语言都区分大小写,对于那些不熟悉的编程语言,自己坚持一个案例(通常更低)会更容易。但也许在某些情况下它可能是最糟糕的选择。
2 你必须自己提供绳索(过滤器进行大小写转换)。
答案 1 :(得分:-1)
Git对源代码不区分大小写,因为源代码不区分大小写。更改代码的大小会改变代码的含义。 var abc
和var ABC
是两个不同的变量声明。
你应该做的是遵循适当的编码风格,采用一个案例模式来遵循,并坚持下去。