两个问题:
如何让 TortoiseSvn diff 工具忽略 EOL 样式?
如何在 PVCS 到 SVN 转换过程中修复混合 EOL 样式文件?
我刚刚使用出色的免费 Polarion 转换工具将 PVCS 存档导入 Subversion。一切看起来都很好,我只想解决一件烦人的事情。
原始 PVCS 存档中的一些 cpp 文件具有混合的 EOL 样式(由于 PVCS 合并工具)。这些文件(及其所有修订版)现在使用自动属性设置“svn:eol-style=native”复制到 Subversion 存档中。
当我使用 TortoiseSvn diff 查看两个版本之间的差异时,我收到错误消息“行尾样式不一致”。
将 10 年的修订历史从 PVCS 转换为 Subversion 的整个想法是让程序员可以轻松查看过去所做的更改 - 如果您需要在差异可能之前手动清理旧文件,它行不通。
警告: EOL 样式的真正问题在于读取 PVCS 存储库并生成 Subversion 转储文件的 java 转换器。它采用 autoprops 设置并将它们应用于您指定的文件类型——在我的例子中是 eol-native 属性——即使文件混合了 EOL。通常 svn 会在提交时检查它,并确保文件在提交之前被清理。
经验教训:从 PVCS 转换为 subversion 时不要使用 eol-stype autoprops。如果您需要它,请在转换完成后添加它并在此过程中清理文件。