diff

diff compare deux fichiers texte sous forme de diff unifié ; la commande patch fournie n’applique le changement que si le contexte source correspond encore. Enregistrer le patch et remplacer l’original sont des actions explicites.

DéveloppementVersion 1.1.3StableAlias: patch
lil-terminal

Vue d’ensemble

Utilisez diff et patch comme un même cycle de contrôle : lire le changement, l’enregistrer si nécessaire, l’appliquer dans une destination séparée, puis décider seulement ensuite de remplacer la source.

Vérifier la modification avant de l’appliquer

Un enchaînement utile est diff old.php new.php -o change.patch, puis patch old.php change.patch. Par défaut, un fichier .patched séparé est créé ; seul -r remplace la source.

Syntaxe

lil-terminal
diff <old> <new> [options]

Référence

diff <old> <new>

afficher un diff unifié avec trois lignes de contexte

diff <old> <new> -c <lines>

choisir de 0 à 20 lignes de contexte

diff <old> <new> -q

indiquer seulement si les fichiers diffèrent

diff <old> <new> -o <patch>

enregistrer le diff dans un fichier de patch

patch <file> <patch>

appliquer le patch dans <file>.patched

patch <file> <patch> -o <dst>

écrire le résultat dans un autre fichier

patch <file> <patch> -r

remplacer atomiquement le fichier source

patch <file> <patch> -f

autoriser le remplacement d’une sortie existante sans -r

Vérifier puis appliquer

diff old.php new.php -o change.patch conserve la modification relue sans toucher aux deux sources. patch old.php change.patch crée par défaut un .patched séparé ; -o <dst> choisit une autre destination et -r remplace l’original.

Limites et sécurité

Chaque fichier texte est limité à 4 Mio et 20000 lignes ; les binaires sont refusés. Avant toute écriture, patch vérifie chaque ligne de contexte : un patch conçu pour une autre version échoue avant modification.

Aperçu interactif du sandbox

Lancez les exemples préparés directement sur la page. Les résultats sont prédéfinis et affichés dans le navigateur ; aucune commande terminal n’est exécutée sur le serveur.

Afficher un diff unifié avec trois lignes de contexte

Installer et gérer

Installez la version compatible actuelle. Choisissez Base pour l’ensemble complet des fonctions ou Minimum pour le paquet réduit ; utilisez upgrade pour mettre à jour un module déjà installé.

Base et Minimum sont deux paquets de la même version actuelle du module.

Paquet Base

Installer le paquet complet avec référence locale et tous les modes publiés.

install diff
Paquet Minimum

Installer le paquet réduit. La référence locale est omise ; help <cmd> -i ouvre la référence serveur actuelle.

install diff -m
Version publique exacte

Installer exactement cette version publiée.

install diff -v 1.1.3
Vérifier ou mettre à jour

upgrade vérifie la compatibilité et remplace le bloc seulement si nécessaire.

upgrade diff
Supprimer le module

Supprimer le bloc d’extension sans toucher au noyau ni aux autres modules.

install diff -u

Exemples

Les exemples sont copiables mais ne sont pas exécutés par le site. Vérifiez chemins, droits et options destructrices.

Afficher un diff unifié avec trois lignes de contexte
cd \sandbox | diff workspace/original.txt workspace/updated.txt
--- workspace/original.txt
+++ workspace/updated.txt
@@ -1,2 +1,2 @@
-alpha
+alpha reviewed
Choisir de 0 à 20 lignes de contexte
diff workspace/original.txt workspace/updated.txt -c 1
--- workspace/original.txt
+++ workspace/updated.txt
@@ -1,2 +1,2 @@
-alpha
+alpha reviewed
Indiquer seulement si les fichiers diffèrent
diff workspace/original.txt workspace/updated.txt -q
Different  yes
Old        workspace/original.txt
New        workspace/updated.txt
Enregistrer le diff dans un fichier de patch
diff workspace/original.txt workspace/updated.txt -o tmp/workspace.patch
Saved  tmp/workspace.patch
Size   148 B
Appliquer le patch dans <file>.patched
patch workspace/original.txt tmp/workspace.patch
Source   workspace/original.txt
Patched  workspace/original.txt.patched

patch est fourni par le module diff et applique un unified diff de manière contrôlée sans dépendre d’un programme système patch.

Écrire le résultat dans un autre fichier
patch workspace/original.txt tmp/workspace.patch -o tmp/patched.txt
Source   workspace/original.txt
Patched  tmp/patched.txt

patch est fourni par le module diff et applique un unified diff de manière contrôlée sans dépendre d’un programme système patch.

Autoriser le remplacement d’une sortie existante sans -r
patch workspace/original.txt tmp/workspace.patch -o tmp/current.txt -f
Source   workspace/original.txt
Patched  tmp/current.txt
Replace  explicit

patch est fourni par le module diff et applique un unified diff de manière contrôlée sans dépendre d’un programme système patch.

Remplacer atomiquement le fichier source
patch workspace/original.txt tmp/workspace.patch -r
Source   workspace/original.txt
Patched  workspace/original.txt

patch est fourni par le module diff et applique un unified diff de manière contrôlée sans dépendre d’un programme système patch.

Gérer un fichier de comparaison absent
diff missing.txt workspace/updated.txt
Fichier introuvable: missing.txt

Fichier utilisé dans cet exemple: sandbox/workspace/original.txt

L’exemple utilise un fichier ou un répertoire de l’espace de documentation protégé /sandbox/.

alpha
beta
gamma

Documentation associée

Version publique actuelle

v1.1.32026-08-08

Première version stable

Version stable actuelle de diff. diff compare deux fichiers texte sous forme de diff unifié ; la commande patch fournie n’applique le changement que si le contexte source correspond encore.