Como você compara várias pastas com os mesmos arquivos para encontrar todas as versões diferentes do mesmo arquivo?

7

Eu tenho mais de 700 pastas com o mesmo conjunto de mais de 200 arquivos asp clássicos (basicamente arquivos de texto) em cada pasta. Ao longo dos anos, várias pessoas fizeram pequenas alterações dentro desses arquivos asp. Eu preciso de um utilitário (para Windows) que possa comparar todas as pastas e arquivos e identificar todas as diferentes versões dos mesmos arquivos.

Alguém tem alguma sugestão?

    
por Daniel Brink 17.06.2010 / 16:25

5 respostas

4

Use o git e um script para criar uma ramificação por pasta em um único repositório, depois faça com que o script tente mesclar todos eles dentro de um. Você será notificado toda vez que os arquivos forem diferentes.

    
por 17.06.2010 / 16:49
1

Você pode começar usando um programa como dupehunter para reduzir a estrutura aos arquivos realmente diferentes (é claro você deve começar a partir de uma estrutura de pastas copiada!). Então o WinMerge pode pelo menos comparar duas pastas.

    
por 17.06.2010 / 16:47
1

O que você está procurando é um aplicativo de Sincronização de Arquivos ...

DirSync Pro é o meu favorito pessoal

Nota: Eu sei que o 'pro' faz soar como o marketing médio proprietário, mas não se deixe enganar. O DirSync Pro é gratuito, de código aberto e de plataforma cruzada

:: abanando o dedo :: E, espero que você não aprenda sua lição com este desastre;). Coloque esses arquivos sob controle de revisão e ramificação se precisar de várias versões simultâneas de desenvolvimento.

    
por 17.06.2010 / 17:14
0

Nenhuma ideia de ferramentas pré-fabricadas para fazer isso. Se você se sentir à vontade para escrever um pequeno script, poderá percorrer as pastas, mantendo um mapa de nomes de arquivos para os hashes de arquivos. No final, você terá todas as informações necessárias, embora não saiba exatamente como deseja apresentá-las ou como pretende usá-las.

Se você quer algo que perceba de forma semi- inteligente que o arquivo x na pasta c parece estar baseado no mesmo arquivo na pasta b , que por sua vez foi baseado no mesmo arquivo na pasta a (ou seja, o software tenta inferir uma 'árvore de edições' para cada arquivo), então eu acho que é um pouco difícil.

    
por 17.06.2010 / 16:40
0

o que você está procurando é o controle de origem. usamos o Tortoise SVN aqui na minha empresa e adoramos. se você instalar o "Tortoise SVN" para windows, então isso deve funcionar. basta criar um repositório e importar a pasta mais antiga. depois que o código base estiver no SVN, desative uma "Cópia de trabalho". Sobrescrever arquivos nessa pasta com a próxima pasta mais antiga, confirmar, repetir. Eu percebo que isso ainda é assustador com 700+ pastas (ou revisões), mas não há muito o que fazer quando se implementa o controle de código no final do jogo. depois de ter tudo no SVN, você pode obter um histórico completo para cada arquivo individualmente.

    
por 01.12.2010 / 18:17