1

我将我的 CVS 存储库转换为 SVN 存储库。它工作得很好,但出现了一个问题......我使用转储文件进行了转换,命令是:

cvs2svn –encoding=( ) –sort=(PATH TO sort.exe) –default-eol=native –dumpfile=PATH\name.svn_dump –svnadmin=(PATH TO SVN ADMIN) (PATH TO REP)

加载转储文件:

svnadmin 加载 PATH(到存储库位置)< PATH\name.svn_dump

现在,一些在 CVS 中标有 -kb 的二进制文件已损坏。如果我在 WinMerge 中打开文件的两个版本,则在选中“忽略回车差异”时看起来相同。

似乎是什么问题?在转换过程中我错过了什么吗?

谢谢,奥德。

4

1 回答 1

1

由于您使用了该--default-eol=native选项,任何在 CVS 中标记为二进制的二进制文件都将以“本机”EOL 编码存储到 Subversion,并且通常会在从 Subversion 签出时遇到您所描述的问题。那么,您真的确定相关文件在 CVS 中被标记为二进制文件吗?

另请注意,还有一个更专有的类似 CVS 的程序,称为 CVSNT,其存储库格式在一些细节上与 CVS 不同。例如,它以与 CVS 不兼容的方式存储文件模式。cvs2svn不支持转换 CVSNT 存储。如果 CVSNT 客户端曾经接触过您的存储库,那么您的转换可能会遇到困难。在这种情况下,请遵循上述链接中的提示,并考虑将相关文件显式设置为二进制文件,例如使用 cvs2svn 的--auto-props选项。

于 2009-08-04T21:37:39.947 回答