是否可以使SVN忽略字符大小写的更改?

是否可以使SVN忽略字符大小写的更改?,svn,Svn,我们在SVN存储库中有VB6应用程序,VB6有一个恼人的习惯,即全局更改相同标识符的字符大小写,从而创建许多伪冲突 是否可以让SVN忽略这些更改 我们也有Java项目,所以它必须是每个存储库设置。您可以让SVN使用外部差异工具进行差异和合并,这可以忽略空白。例如,Unix上的“diff”命令有一个--ignore case选项来忽略case 不过要注意,即使这些大小写更改对VB很重要,例如字符串内部,这也会忽略大小写更改 更好的选择可能是标准化VB6试图强加给您的任何大小写(或者在VB6中关闭该

我们在SVN存储库中有VB6应用程序,VB6有一个恼人的习惯,即全局更改相同标识符的字符大小写,从而创建许多伪冲突

是否可以让SVN忽略这些更改


我们也有Java项目,所以它必须是每个存储库设置。

您可以让SVN使用外部差异工具进行差异和合并,这可以忽略空白。例如,Unix上的“diff”命令有一个--ignore case选项来忽略case

不过要注意,即使这些大小写更改对VB很重要,例如字符串内部,这也会忽略大小写更改


更好的选择可能是标准化VB6试图强加给您的任何大小写(或者在VB6中关闭该选项,如果它是一个选项),这样它就不会一直在现有文件中更改它。

差异是在本地执行的,因此每个客户端都可以决定其策略。您可以配置本地差异工具。Windows和unix版本中介绍了如何执行此操作

您可以将其用于unix:

svn --diff-cmd "./idiff.sh" diff
idiff.sh:

#!/bin/sh

LEFT=${6}
RIGHT=${7}

diff -i $LEFT $RIGHT

您的问题是关于文件名还是文件内容?文件内容(标识符,即变量、类型等)如果您忽略这种性质的更改,则有点违背版本控制系统的目的。不如果案例更改是故意的呢?VB6确实有一种习惯,即使在不相关的函数中,也会对代码的案例进行任意更改。例如,当您无缘无故地编辑一个完全不同的属性时,它会将.Name更改为.Name,或者在您尚未编辑的函数上更改函数参数的大小写。