Intento hacer un parche como se presenta aquí .
Digamos que tengo dos directorios pp1(modified version)
y pp0(clean version)
hago un archivo de parche pp0.patch
con el diff
comando:
diff -crB pp0 pp1 > pp0.patch
El problema es que si hay un archivo solo en pp1, no se incluirá en el parche. ¿Cómo solucionarlo?
ACTUALIZACIÓN :
Primero cambio al directorio de pp0 y pruebo si el parche tendrá éxito
patch --dry-run -p1 -i /path-to-pp0.patch
Aunque he agregado --new-file
al diff
comando, aquellos solo en pp1
no están listados en el resultado
ACTUALIZACIÓN :
accidentalmente parcheé el archivo incorrecto
diff -crb --new-file pp1 pp0 > pp0.patch
o
diff -crNb pp1 pp0 > pp0.patch
hará
La respuesta inmediata:
diff -N
como explica pootzko . Encontrarás que muchos parches están creados pordiff -urN
.Qué puede mejorar su vida: comience a usar una herramienta de control de versiones. Si no conoce ninguno, comience con uno de los tres principales sistemas distribuidos de control de revisión , Bazaar , Git o Mercurial . Registre la versión limpia, trabaje, verifique su trabajo tantas veces como desee y solicite a su sistema de control de versiones una diferencia entre la versión limpia y su trabajo.
fuente