Je pense que le "Generic - Reusable Diff Algorithm in C#" sur Codeproject est le meilleur que l'on puisse trouver comme moteur .NET pour diff/patch/merge. J'ai réalisé un projet de mon propre chef avec cet algorithme et il répond à mes besoins dans la plupart des cas. Il y a un ou deux pires scénarios quand l'algorithme rend le fichier patch plus grand qu'il ne doit l'être. Mais dans la plupart des cas, il fonctionne très bien pour moi (fichiers texte d'une taille de >30 MB).
Je suis actuellement en train de tester un autre projet de Codeproject que vous pouvez trouver ici : http://www.codeproject.com/KB/applications/patch.aspx Il utilise des DLLs de Microsoft pour Parcheando, donc ça semble intéressant. Mais ces DLLs ne sont pas gérées et ce projet n'est qu'une sorte d'enveloppe pour elles. Mais peut-être qu'il peut vous aider
Edit : Je viens de trouver un autre projet, DiffPlex : http://diffplex.codeplex.com/ C'est une combinaison d'une bibliothèque de diffusion .NET et d'un visualiseur de diffusion Silverlight et HTML. . Comme indiqué là DiffPlex est la bibliothèque que CodePlex utilise pour générer les différences entre les fichiers.
5 votes
Ce fil n'a pas été utilisé depuis un moment, mais quel projet de diff open source avez-vous choisi ? Je cherche la même chose et à part les bibliothèques listées, je n'ai pas trouvé grand chose (déçu que si peu ait changé en 2 ans...).
1 votes
Marr75 : voici [Crédit à Cheeso / Brian (voir réponses ci-dessous)] : "Le Code Google Diff/Patch/Fusion a été porté en C#. Le composant COM fonctionne toujours, mais si vous venez de .NET, vous voudrez utiliser directement le portage .NET."
1 votes
Je suis d'accord que cette réponse était très utile, elle demande un moteur ou un algorithme pour un problème de programmation très spécifique, et je l'ai nominée pour la réouverture.