Diff et patch

De Wiki doc


Les commandes diff et patch permettent d'appliquer des correctifs sur des fichiers textes (le plus souvent du code ou des fichiers de configuration). La première permet d'afficher les différence entre deux fichiers et de créer un fichier de patch. La seconde applique ce patch à l'un des deux fichier.

Création de deux fichiers

echo -e "VERSION=1.0\nNOM=Test" > fichier1
echo -e "VERSION=2.0\nNOM=Test" > fichier2

Affichage des différences

diff -u fichier1 fichier2
@@ -1,2 +1,2 @@
-VERSION=1.0
+VERSION=2.0
 NOM=Test

Les deux premières lignes qui s'affichent sont des commentaires et ont été supprimé pour cette documentation.

Création du fichier de patch

diff -u fichier1 fichier2 > patch.diff

À ce stade, les différences de "fichier1" seront écrasés par les différences de "fichier2" en cas d'application du patch.

Application du patch

patch -i patch.diff fichier1