¿Cómo puede git saber que cambió la ruta de una carpeta?
(kwoncheol.me)- Antes de empezar
-
git distingue los archivos por su valor hash
-
Los cuatro tipos de objetos (object) de git
-
Cambiar la ruta de una carpeta y cambiar el nombre de un archivo son la misma operación
-
Reestructuración de la estructura de carpetas, y un git bastante inteligente
-
La inferencia de git
-
El proceso de inferencia de renamed y edit-renamed de git
Paso 1: selección de candidatos
Paso 2: comparación del hash de archivos (buscar renamed)
Paso 3: comparación de similitud entre archivos (buscar edit-renamed)
→ ¿No es una operación demasiado costosa?
-
La historia detrás del sufrimiento
-
Cierre
1 comentarios
Como comentario aparte, me pareció que Git y GitHub detectan las rutas de archivos de forma diferente.
En Git claramente se reconoció como un
rename, pero cuando subes un PR en GitHub a veces aparece como si se hubiera eliminado un archivo y subido otro distinto, así que no sale el diff y muchas veces resulta incómodo...