Como converter um arquivo rdiff delta para um diff normal?

5

Eu preciso diferenciar dois arquivos muito grandes, grandes demais para diff . rdiff pode produzir um arquivo delta para eles em alguns segundos, mas eu gostaria de ter um diff real como saída. Existe uma maneira existente de converter um rdiff delta em um diff normal?

    
por uckelman 04.11.2010 / 15:32

1 resposta

2

Eu não acho que isso seja (facilmente) possível. rdiff analisa os arquivos como blocos de bytes, gerando uma assinatura para blocos de bytes de tamanho fixo. O novo arquivo é comparado a essas assinaturas. O arquivo delta contém todos os blocos diferentes, que não correspondem necessariamente às linhas no arquivo original ou comparado.

Por exemplo, um original:

AAAAAAAAAA
BBBBBBBBBB
CCCCCCCCCC
DDDDDDDDDD

comparado com:

AAAAAAAAAA
BBBBOOOBBB
CCCCCCCCCC
DDDDDDDDDD

poderia produzir um delta:

[..]BOOOBBB
CCCCCCCCCCC
DDDDDDD[..]

Arquivos regulares de diff geralmente contêm todas as linhas alteradas. O arquivo rdiff delta provavelmente será apenas uma parte de algumas linhas alteradas, e muitas linhas inalteradas também. Você teria que analisar o (s) arquivo (s) novamente para determinar as linhas reais alteradas.

Para mais informações, consulte a documentação rdiff ou o link

    
por 08.02.2011 / 11:57

Tags