El command Git list artefactos que han cambiado entre commitA y commitB, incluidos aquellos que finalmente se han restablecido a like en commitA

Esto es necesario para generar parches acumulativos basados ​​en un ReleaseCommitA dado.

Los dos commands git log y git diff pueden proporcionar una list de artefactos que han evolucionado entre dos commits, pero se pierden un artefacto que ha cambiado varias veces de tal forma que vuelve a estar en ReleaseCommitA.
Un cliente que ya ha aplicado un parche desde ReleaseCommitA debe get este tipo de artefacto en un parche producido por esta list.

Un command que enumera algunos artefactos varias veces estaría bien.

Editar: Puede que me haya perdido este punto: queremos producir regularmente un nuevo parche acumulativo para todos nuestros clientes, pero no todos están al mismo nivel de parche (y no están conectados a nuestros commits de git de ninguna manera). En realidad, es la producción de un Service Pack estándar acumulativo para una versión determinada: el parche debe include todas las confirmaciones desde la confirmación de un hito determinado. Nuestro process de construcción necesita una list de todos los artefactos relacionados para preparar el parche. Como se dijo en la primera input, sabemos cómo producir esa list con git diff o git log , excepto que algunos artefactos pueden faltar si se han restablecido al estado tal como estaban en ReleaseCommitA . En resumen, de alguna manera estamos buscando una opción en git diff o git log para reportar todos los artefactos que han sido afectados por una ruta de confirmación sea cual sea la acción (Agregado copydo eliminado Modificado Renombrado etc …), y también nos preguntamos si se necesita una nueva acción para manejar el caso de "el file ha cambiado algunas veces pero finalmente se ha restablecido a como estaba en commitA ".