Pergunta
Eu converti meu repositório CVS no repositório SVN. Ele trabalhou muito, mas um problema tinha ocorreu .... Eu convertido usando um arquivo de despejo, e o comando foi:
cvs2svn -encoding = () -sort = (PATH TO sort.exe) --default-eol = -dumpfile nativa = PATH \ name.svn_dump -svnadmin = (PATH TO SVN ADMIN) (caminho para REP)
carregar o arquivo de despejo:
PATH carga svnadmin (a localização do repositório)
Agora, alguns arquivos binários, que na CVS são marcadas com -kb, ter sido danificado. Se eu abrir ambas as versões de um arquivo em WinMerge, não têm a mesma aparência quando os "ignorar retorno de carro Diferenças" está marcada.
O que parece ser o problema? Eu perdi alguma coisa durante a conversão?
graças, Oded.
Solução
Uma vez que você usou a opção --default-eol=native
, quaisquer arquivos binários que foram não marcado como binário no CVS serão armazenados para o Subversion na codificação EOL "nativo" e normalmente têm problemas como você descreveu quando check-out do Subversion. Então, você está realmente certo de que os arquivos em questão foram marcados como binário no CVS?
Observe também que há uma mais proprietária CVS-like programa chamado CVSNT cujo formato repositório é diferente em vários detalhes para que de CVS. Por exemplo, ele armazena os modos de arquivos de uma forma que é incompatível com o CVS. cvs2svn faz não Suporte a conversão de repositórios CVSNT . Se seu repositório já foi tocado por um cliente CVSNT, você pode ter dificuldades com a sua conversão. Nesse caso, siga as dicas no link acima e também considerar a criação dos arquivos em questão para binário explicitamente, por exemplo usando a opção --auto-props
de cvs2svn.