Considere los siguientes casos de uso:¿Cómo encontrar la nueva ruta de un archivo renombrado cuyo nombre original se conoce?
Estoy trabajando en mi sucursal local, mientras que la refactorización se ha realizado en la sucursal principal. Ahora algunos archivos (clases) han sido renombrados y/o movidos a nuevas ubicaciones. Cuando me fusiono, recibo muchos errores de importación debido a la falta de clases.
--A--B--C--D--E-- (master)
\ \
F--G--H--I--J (topic)
En A
no son los nombres antiguos Wich i utilizado en F--G--H--I
.
En B--C--D--E
los archivos se refactorizan dando como resultado nuevos nombres de archivo en E
. Esto incluye grupos de cadena renombra como
B: path/to/File.java
-> C: path/to/BetterName.java
-> D: better/package/BetterName.java
-> E: final/package/FinalName.java
Ahora se fusionan los resultados en J
con muchos errores (compilación) debido a las refactorizaciones que faltan en mi rama. (Debido a que todavía se refieren a path.to.File
en lugar de final.package.FinalName
el fin de solucionar la acumulación roto, necesito saber los nombres nuevos para las viejas clases.
¿Existe un comando git para obtener todos los cambios de nombre que tienen se ha aplicado a un archivo particular?
funciona su guión? en caso afirmativo, no recibo su pregunta – CharlesB
Sí, funciona, pero me preguntaba si existe una solución más simple que el script anterior. Como tengo que hacerlo para cada archivo. – helt
Necesita decirle 'git log' para encontrar nombres con la opción' -M'. Entonces solo quieres reportar los cambios de nombre y eso se hace con la opción '--diff-filter'. He agregado más detalles a mi respuesta. –