Microsoft Visual Studio verwendet XML, um seine .vcproj
Projektdateien zu speichern. So Diffing XML-Projektdateien sollte leicht sein.Vorschläge zum Verwalten von Visual Studio-vcproj-Projektdateien in Versionskontrolle
Leider, wenn Sie die Eigenschaften der Projektdatei ändern, besteht Visual Studio darauf, die XML-Knoten der Projektdatei zufällig zu mischen! Dies macht textuelles Differieren und Zusammenführen von Projektdateiänderungen im Grunde unmöglich. Wenn ich eine Compiler-Einstellung ändere, kann mein visuelles Diff-Tool denken, dass ich 50% der Zeilen in der Datei geändert habe! Ich habe sogar einige XML-Diff-Tools ausprobiert, aber sie zeigen nur eine strukturiertere Ansicht des gleichen Chaos.
Hat jemand irgendwelche Vorschläge für die Pflege von .vcproj
Dateien in der Quellcodeverwaltung? Oder eine Möglichkeit, Visual Studio zu nicht zu überzeugen, die XML-Knoten in der Datei .vcproj
neu anzuordnen?
(Ich habe auch Tools wie CMake untersucht mit .vcproj
Dateien von einer diff freundlicher Textdatei zu generieren, aber CMake hat seine eigenen Probleme.)
Ich denke, es wäre einfach, ein kurzes Python-Skript zu schreiben, um einen .vcproj-Dateien XML-Knoten zu alphabetisieren. Ich sehe, dass WinMerge Plugins hat, um XML zu diffundieren; vielleicht sollte jemand das "vcproj alphabetizer" WinMerge Plugin schreiben? Vielleicht werde ich. :) –