web-dev-qa-db-fra.com

Existe-t-il des outils de diff / fusion Xml gratuits?

J'ai plusieurs fichiers de configuration dans mes applications .net avec lesquels j'aimerais fusionner les éléments de paramètres d'application, etc.

J'étais sur le point de commencer à le faire manuellement comme d'habitude, mais un outil d'interface graphique de diff XML doit être disponible quelque part.

L'outil pourrait aller au niveau des éléments pour comparer et afficher les différences, etc.

Cependant, Google n’a donné aucun résultat substantiel d’outil gratuit et n’a donné aucune indication pour quelque chose de valeur.

Un tel outil est-il disponible? C'est très utile? Gratuitement?

Merci d'avance. :)

Modifier:

Voici quelques précisions sur la fonctionnalité qui permettrait de transformer mon travail manuel fastidieux, source d'erreurs, en une tâche plus simple en une minute (et un potentiel d'automatisation):

Dans KDiff3, vous pouvez faire une diff/fusion de répertoires entiers. Il existe un diff hiérarchique très précis, convivial et clair. Je souhaitais trouver une solution similaire mais, au lieu de la hiérarchie de répertoires, une hiérarchie d'éléments XML.

S'il n'y a pas un tel logiciel open source, j'envisage d'en créer un sur CodePlex pour fournir cette fonctionnalité.

100
Russell

KDiff n'est pas spécifique à XML, mais il est gratuit. Il fait un bon travail de comparaison et de fusion de fichiers texte.

12
epotter

Jetez un oeil à Outils de comparaison de fichiers , à partir duquel j'utilise WinMerge . Il a la capacité de comparer des documents XML (vous pouvez activer le préfiltre DisplayXMLFiles).

DisplayXMLFiles.dll - Ce plugin imprime joliment les fichiers XML en insérant des tabulations et des sauts de ligne. Ceci est utile pour les fichiers XML qui n'ont pas de retour de ligne à des emplacements pratiques.

WinMerge in action

Voir aussi mon tableau de comparaison des caractéristiques .

30
dma_k

Je me rends compte que ce fil est un peu vieux et je suis sûr que vous avez déjà trouvé une solution, mais pour les futurs lecteurs, j'ai écrit et publié une application Windows qui résout spécifiquement le problème de la comparaison et de la fusion de fichiers XML.

Projet: Fusionner peut effectuer des comparaisons et des fusions à deux et trois voies de tout fichier XML (deux des fichiers étant considérés comme des révisions indépendantes d'un fichier de base commun). Vous pouvez lui indiquer d’identifier des éléments dans les fichiers d’entrée par des valeurs d’attributs, ou le contenu d’éléments enfants, entre autres.

Il est entièrement contrôlable via la ligne de commande et peut également générer des rapports de texte contenant les différences entre les fichiers.

Project: Merge merging three XML files

19
user420442

Quelques outils de différenciation et de fusion XML basés sur Java sont répertoriés ci-dessous:

Open Source XML Diff écrit en Java

Liens ajoutés:

14
Chris Fulstow

J'utilise TortoiseMerge, qui est inclus dans le programme TortoiseSVN

Et nous avons parlé des outils File Diff dans ce fil, non dédié à XML si

https://stackoverflow.com/questions/1830962/file-differencing-software-on-windows

3
YOU

Bien que ce ne soit pas un outil graphique, mes tests rapides indiquaient que diffxml était prometteur. L’auteur semble avoir réfléchi à la complexité de la représentation standard des différences pour les éléments imbriqués (spécification DUL - Delta Update Language).

En installant et en exécutant ses outils, je peux dire que la sortie de texte brut est assez claire et concise. Il n'offre pas le même degré d'appréhension immédiate qu'un outil graphique, mais étant donné que la sortie est normalisée en tant que DUL, vous pourrez peut-être utiliser cela et créer un outil permettant de générer une représentation visuelle. J'adorerais certainement en voir un.

La section "liens" de l'auteur fait référence à quelques autres outils de différenciation XML, mais comme vous l'avez mentionné dans votre message, ils sont tous propriétaires.

3
Jarret Hardie

Pretty Diff a été créé avec XML à l'esprit. Assurez-vous simplement de cliquer sur l'option "balisage".

http://prettydiff.com/

3
austincheney

A7Soft fournit des outils de comparaison XML freeware et shareware:

http://www.a7soft.com

2
Andrew Lapick

Ceci est un moteur de diff pour les développeurs Java, mais il est livré avec une interface de démonstration - vous pourrez peut-être l'utiliser: https://community.emc.com/docs/ DOC-5042

0
AP.

Le DiffDog d'Altova a une période d'essai gratuite de 30 jours et devrait faire ce que vous cherchez:

http://www.altova.com/diffdog/diff-merge-tool.html

0
Lin Yu Tang

Je vous recommande d'utiliser l'outil CodeCompare . Il prend en charge la mise en évidence native des données XML et peut constituer une bonne solution pour votre tâche.

0
JackD