Necesito comparar y documentar 2 versiones del mismo proyecto Javascript / XML

Tengo un proyecto en SAPUI5 (javascript y xml) que tiene 2 versiones diferentes (una original y otra con modificaciones). Necesito documentar / registrar (¿palabra?) Todos los cambios entre ellos, para que en el futuro podamos volver a aplicar las mismas modificaciones cuando actualicemos el código original.

Además: el proyecto también está en un repository de GIT (Bitbucket) pero el compromiso inicial no tiene la versión inicial, tiene una versión ya modificada.

¿Cuál crees que sería la mejor manera (less time) para hacer esto?

Gracias,

Con git diff <commit hash 1> <commit hash 2> puedes ver las diferencias.
Con git cherry-pick puedes aplicar cambios de una apuesta a otra.

Use git diff o software como Beyond Compare .

De alguna manera, extraería las dos versiones de los repositorys que tienes.

Una vez que los tenga, puede diff -c old_version new_version > versions.diff .

Si los tiene en un repo de git, puede git diff old_commit:path/to/the_file path/to/the_file > versions.diff

Después de eso, puede patch -o updated_version old_version versions.diff , y se updated_version los cambios a la updated_version . (También puede alimentar el file diff para git apply ).

Esto funciona para casos simples, cuando se conserva suficiente context alnetworkingedor de las líneas que necesitan actualización (otras partes del file pueden cambiar de forma independiente).

Para un caso más general, deberá comprender la naturaleza de los cambios y quizás escribir un guión inteligente que busque estructuras particulares más allá de simples comparaciones de cadenas.

Para XML, la transformación XSLT parece natural, o algo que usa su lenguaje favorito y sus capacidades de event handling XML. Dicha secuencia de commands, que trabaja en el nivel de la estructura del nodo (por ejemplo, utilizando XPath) sería inmune a los cambios de formatting XML, donde diff fallará.

Para javascript, es más difícil y depende mucho de la naturaleza de los cambios. (Tal vez parchear el código JS, a diferencia de los files fuente JS, podría ser un enfoque más robusto).