Supponiamo di avere due directory chiamate rispettivamente originale
e nuova
. Per produrre un file patch con le differenze tra le due si esegue dalla directory parent:
diff -Naur originale nuova > file.patch
Le opzioni passate al diff
dicono di gestire anche i file nuovi, trattare tutto come file di testo, stampare alcune righe di contesto e scendere ricorsivamente nelle directory. Il file risultante sarĂ qualcosa di simile a:
diff -Naur originale/genpowerd.c nuova/genpowerd.c --- originale/genpowerd.c 2005-01-04 23:15:35.000000000 +0100 +++ nuova/genpowerd.c 2006-07-01 17:16:04.000000000 +0200 @@ -86,6 +86,9 @@ static char *upstype = NULL; +/* Program to exec() just before killing the inverter. */ +static char *exec_program = NULL; + #if defined (__linux__) && !defined (NEWINIT) /* Create a flag file for Miquel van Smoorenburg ... ...
Supponiamo di avere i file originali nella directory originale
, dalla directory parent si esegue:
$ patch -p0 < file.patch patching file originale/genpowerd.c
I file verranno modificati direttamente dentro la directory originale, quindi si deve fare attenzione a non eseguire il comando due volte. Il comando patch
comunque dovrebbe intercettare la previously applied patch e dare un avviso.