Cómo aplicar un fichero parche sobre código fuente en LINUX / UNIX

A menudo me he encontrado con que, para corregir un bug de un programa o simplemente añadir una funcionalidad nueva, basta con aplicar un parche (patch) al código fuente. En Linux / UNIX disponemos de un comando llamado patch que aplica un fichero diff o patch a un fichero de código fuente. El comando patch utiliza un fichero patch que incluye una serie de diferencias, generadas por un programa diff, y aplica estas diferencias a uno o más ficheros originales, produciendo versiones parcheadas. El siguiente uso es el más común:
$ patch -p1 < {/ruta/al/fichero/patch}
Para aplicar un parche, se puede correr el siguiente comando en una consola:
$ patch < /ruta/al/fichero
Los parches se pueden deshacer, o revertir, con la opción -R:
$ patch -R < /ruta/al/fichero
Estos son tres casos básicos de utilización del comando patch. Para más información:
% man patch

Enlace

Publicaciones Similares

  • Directorio con permisos de escritura para los miembros de un mismo grupo

    Escenario Estoy desplegando una aplicación web en un directorio en el que pretendo puedan escribir todos los usuarios perteneciente a un grupo dado. Problema No basta con crear un grupo, añadir los usuarios al tal grupo y adjudicar el directorio al grupo en cuestión. Solución Empecemos desde el principio. Los usuarios Antonio y Carla han…

  • Autenticación múltiple en Spring boot: JWT y formulario

    Escenario Por exigencias de un tercero debemos adaptar nuestro servicio web para que sea compatible con autenticación por JWT. Hasta ahora las llamadas al API se hacían desde dentro de la aplicación usando las mismas credenciales del usuario autenticado por cookie. La configuración de la cadena de filtros de Spring Security es la siguiente:

  • phpsize

    phpize: command not found Si alguna vez te topas con este error intentando instalar un paquete PEAR en un sistema linux, muy probablemente sea por que no tienes installado el paquete php-devel.

  • Chart.js: cómo cambiar el idioma (locale) dinámicamente

    Escenario Por un lado una aplicación que permite al usuario personalizar el idioma del sitio. Por otro, una gráfica de tipo línea temporal generada con la biblioteca Chart.js, integrada en un módulo de React con react-chartjs-2. Problema Según un comentario de un usuario de Stackoverflow, basta con un require('moment/min/moment-with-locales'); y establecer el valor de la…

  • Instala un certificado SSL en tres pasos

    Escenario Todavía tienes una aplicación web, servida por nginx, a la que solo se puede acceder por http. Objetivo Instalar el certificado de SSL gratuito en tres pasos. Usaremos a modo de ejemplo el subdominio certbot.technoage.net. Pasos 1. Añadir el repositorio $ sudo add-apt-repository ppa:certbot/certbot 2. Instalar el paquete de cerbot para nginx $ sudo apt-get update && sudo apt-get install python-certbot-nginx 3. Obtener el certificado…

  • Cómo recrear el estado de un componente de React

    Escenario Tenemos una aplicación web usando React 15.6.2. Todo va bien hasta que un nuevo módulo para una nueva funcionalidad requiere una versión >= 16.3. El problema es que al actualizar la biblioteca de programación otro módulo dejó de funcionar. Problema El modulo que dejó de funcionar consistía en una serie de combos que se…

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *