Uso de los comandos patch y diff
Además de las herramientas de control de versiones que nos permiten una gestión completa de los cambios realizados en los ficheros y su posterior manipulación, existen otras con menos opciones, pero que no debemos dejar pasar por alto es el caso de patch y diff.
El comando diff nos permite mostrar la diferencia entre dos ficheros de texto y además nos permite guardar estas diferencias en los ficheros con extensión “.patch”.
El comando patch es el encargado de interpretar los ficheros “.patch” y aplicar las diferencias en un fichero destino.
Imaginemos que tenemos dos archivos uno con la información original, llamado original.txt y otro al que hemos llamado modificado.txt que contiene lo mismo que original.txt más unas cuantas líneas adicionales. Con el comando diff podremos ver las modificaciones y guardarlas en un fichero de la siguiente forma:
# diff –u original.txt modificado.txt > modificaciones.patch
Ahora ya disponemos del fichero modificaciones.patch que contiene las diferencias. Si queremos actualizar el fichero original con estas diferencias usaremos el comando patch de la siguiente forma:
# patch original.txt < modificaciones.patch
Un ejemplo clásico de uso sería la actualización de programas con las nuevas versiones modificadas.