Esta guía proporciona una descripción básica para aplicar un parche a un programa o archivo.
El comando utilizado para aplicar parches es el comando parche, pero para aplicar un parche, el comando diff también debe usarse para suministrar las diferencias que deben parchearse.
¿Por qué crearías un parche?
Imagina que tienes un archivo HTML de la siguiente manera:
Bienvenido a mi sitio
La fuente anterior, cuando se carga en un navegador web, mostrará las palabras "Bienvenido a MySite".
Es común cuando se programa para que haya varias versiones del mismo archivo. Por ejemplo, habría una versión que es la versión actual en vivo, habría otra versión en la rama de desarrollo que puede contener múltiples cambios, finalmente, podría haber otra versión en una rama de la versión.
La versión de lanzamiento sería la versión utilizada por los usuarios reales (es decir, en este caso, los visitantes del sitio web de MySite). Digamos que MySite está en la versión 1.0. Después de una fase de desarrollo, creará una rama de lanzamiento que sería en este caso 1.1. La rama de desarrollo estará por delante de la rama de lanzamiento porque puede contener cambios que no se deban lanzar en la versión 1.2, pero sí en la versión 1.1.
Imagina que hubo un error por el cual MySite debería llamarse YourSite. Podrías ir a cada rama y realizar cambios en la versión en vivo, la versión de desarrollo y la versión de lanzamiento de ti podrían hacer el cambio como una revisión en vivo y luego aplicar el parche a las sucursales de desarrollo y lanzamiento.
Un ejemplo trabajado
Cree un archivo llamado myfile.html con el siguiente código:
Bienvenido a mi sitio
Este es un ejemplo trabajado de parchear el código fuente.
Cree otro archivo llamado myfile_v2.html con el siguiente código:
Bienvenido a YourSite
Este es un ejemplo trabajado de parchear el código fuente.
El primer archivo es la página web original con el encabezado "Bienvenido a MySite". El segundo archivo es el mismo que el primer archivo, excepto que MyFile cambia de nombre a YourFile en el texto.
Cómo crear el archivo Diff
Para crear un parche, necesitamos resolver las diferencias entre myfile.html y myfile_v2.html.
Podemos hacer esto con el comando diff de la siguiente manera:
diff -u myfile.html myfile_v2.html> myfile.patch
Puede abrir el archivo myfile.patch en el editor nano de la siguiente manera para verlo: nano myfile.patch
Las líneas que no han cambiado se muestran en azul. Las líneas que se han eliminado se muestran en rojo y las que se han agregado se muestran en verde. Para aplicar el parche a myfile.html use el siguiente comando: parche <myfile.patch Esto aplicará los cambios creados usando el comando diff al archivo original myfile.html. Si desea revertir el parche para que myfile.html vuelva a ser como era originalmente, use el siguiente comando: parche -R <myfile.patch El comando parche se puede usar para aplicar parches en toda una estructura de directorios. Hay herramientas mucho mejores que el comando parche para crear parches y garantizar un buen control de la fuente. Hay una razón por la que tantos proyectos de desarrollo utilizan GIT para el control de la fuente. GIT facilita la creación de una estrategia de ramificación consistente. El comando de parche está bien para aplicar diferencias a un script de bash o algo simple, pero puede crear fácilmente una copia de respaldo de los archivos que desea parchear y simplemente copiar los nuevos archivos en el mismo lugar. Para más información use el comando man: parche de hombre Cómo aplicar el parche usando el comando parche
Cómo revertir un parche
Resumen