Pergunta

A fim de ter em comentário relato de Richard e resposta de Steen de I tem que especificar independentemente do arquivo mime tipo e independentemente do tipo de arquivo marcado no CVS, eu estou procurando como tratar todos os arquivos como arquivo binário em cvs2svn? Talvez não seja possível?

Por favor, Richard (ou outros), pode me dizer como saber o tipo marcado no CVS para um determinado arquivo?


Olá, Como tratar todos os arquivos como um arquivo binário?
Todos os 16 pass (de cvs2svn) estão correctamente feito, mas vários arquivos binários são corrompidos (como .gif). Não são tratados como arquivo binário!

A linha de comando que eu usei é:

python C:\noinstaller\cvs2svn-2.2.0\cvs2svn -s "SVN_REPO" "CVS_REPO" --use-cvs
--encoding=latin1 --mime-types=svn-mime-types --eol-from-mime-type 
--keywords-off --sort=C:\noinstaller\UnxUtils\usr\local\wbin\sort.exe

Após a leitura do cvs2svn FAQ , eu tinha tentado muitas outras opções, mas mesmo o mesmo arquivo são sempre corrompido.

Graças. Christian.

Foi útil?

Solução 3

deduzo é impossível vigor cvs2svn considerar todos os arquivos como arquivo binário.

Outras dicas

Subversion usa um algoritmo heuritic para determinar se um arquivo é binário ou não. Em primeiro lugar, ele verifica se o parâmetro de configuração mime-types-file está definido e usa isso para mapear arquivos para mime-types. Se não tal configuração é encontrado, ele olha para os 1024 primeiros bytes, e se mais de 15% não estão dentro do alcance ASCII ou qualquer um deles são valores nulos, o arquivo é considerado binário. Para definir especificamente um tipo MIME de um determinado tipo de arquivo, você deve usar auto adereços .

Por favor, note que, se a subversão determina o arquivo a ser de mime-type image/x-xbitmap ou image/x-xpixmap, ele será tratado como um arquivo de texto

Auto-props afetar as ações svn add e svn import e são definidas usando o tempo de execução de configuração , que são especificados, quer através de opções de linha de comando ou no configuração arquivo para a subversão, encontrado no diretório conf instalação subversão. Os seguintes valores devem ser definidos:

# default is 'no', so we enable auto props with
enable-auto-props = yes

# specify absolute path to mime.types like file, e.g.
mime-types-file = /etc/mime.types

Isso deve mapear seus arquivos binários corretamente.

EDIT: Do cvs2svn manual:

- auto-props = ARQUIVO

Especifique um arquivo no formato de arquivo de configuração do Subversion, cujas [Auto-props] secção pode ser usada para propriedades arbitrárias em conjunto arquivos do Subversion repositório com base em seus nomes. (O [Auto-props] cabeçalho secção deve estar presente; outras seções do arquivo de configuração, incluindo os enable-auto-props definição, são ignorados.) Nomes de arquivos são compatíveis com os padrões de nome de arquivo caso insensível, consistente com o comportamento do Subversion. O poder de arquivo auto-props têm conteúdo como este:

[auto-props]
*.txt = svn:mime-type=text/plain;svn:eol-style=native
*.doc = svn:mime-type=application/msword;!svn:eol-style

Assim, usando a linha de comando interruptor --auto-props e um auto-props arquivo, você deve ser capaz de obter a funcionalidade queria do roteiro cvs2svn

Quanto à questão de como ter cvs2svn tratar todos os arquivos como binário, só posso apontar para a seção no FAQ relativas a EOL

A partir da versão 2.0, o comportamento padrão do cvs2svn é tratar todos os arquivos como binário exceto aqueles explicitamente determinado a ser texto.

Também a partir do FAQ:

Se um arquivo é marcado como binário no CVS (com -kb cvs admin, em seguida, cvs2svn sempre tratar o arquivo como binário.

Para ver se um arquivo é marcado como binário, procure a opção -kb sobre o arquivo no CVS. Em WinCVS, existem colunas para isso, bem como codificação.

Infelizmente, eu não tenho uma solução para você, mas eu gostaria de tentar e simplificar seus argumentos de comando para se concentrar sobre o que exatamente não está funcionando direito para esses arquivos. Usando um arquivo --auto-props lhe dará controle total sobre cada arquivo. Se o arquivo CVS é ??"limpa" (que significa todos os arquivos estão devidamente comprometidos como texto e binário), o estilo --default = parâmetro nativa supostamente dá os melhores resultados.

Boa sorte e deixe-nos saber o que funciona para você.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top