Microsoft Visual Studio utiliza XML para guardar sus archivos de proyecto .vcproj
. Los archivos de proyecto XML tan diferentes deberían ser fácilmente.Sugerencias para mantener archivos de proyecto Visual Studio vcproj en el control de versión
Desafortunadamente, si cambia alguna de las propiedades del archivo de proyecto, Visual Studio insiste en mezclar aleatoriamente los nodos XML del archivo de proyecto. Esto hace que la diferencia textual y la fusión de los cambios en el archivo del proyecto sean básicamente imposibles. ¡Cambiar la configuración de un compilador puede hacer que mi herramienta visual diff piense que he cambiado el 50% de las líneas en el archivo! Incluso he probado algunas herramientas XML diff, pero solo muestran una vista más estructurada del mismo desastre.
¿Alguien tiene alguna sugerencia para mantener los archivos .vcproj
en el control de código fuente? O una forma de convencer a Visual Studio para que no reordene los nodos XML en el archivo .vcproj
?
(También he investigado el uso de herramientas como CMake para generar .vcproj
archivos desde un archivo de texto más diff-amigable, pero CMake tiene sus propios problemas.)
Supongo que sería fácil escribir una secuencia corta de Python para alfabetizar los archivos .vcproj Nodos XML. Veo que WinMerge tiene complementos para diferenciar XML; tal vez alguien debería escribir el plugin WinMerge "alfabético vcproj"? Quizás lo haga. :) –