„Paczowanie” czyli jak zrobić łatkę przy pomocy diff.
- Przypuśćmy ze mamy do zrobienia jakieś zmiany w pliku test.c ponieważ skrypt kończy z błędem syntax error. A wygląda on tak:
if [ ! -e test.c ]
then { echo "nie ma takiego pliku";}
else { echo "plik istnieje"}
fi
- Chcemy go poprawić żeby wyglądał tak:
if [ ! -e test.c ]
then { echo "nie ma takiego pliku";}
else { echo "plik istnieje";}
fi
Więc tworzymy plik test2.c i wklejamy tam poprawną wersje.
- Następnie tworzymy łatkę poprawiającą:
diff -uN test.c test2.c > test.c.patch
Wygląda ona następująco:
--- test.c 2010-05-10 12:06:17.507217702 +0200
+++ test2.c 2010-05-10 12:06:45.153591995 +0200
@@ -1,4 +1,4 @@
if [ ! -e test.c ]
then { echo "nie ma takiego pliku";}
-else { echo "plik istnieje";}
+else { echo "plik istnieje"}
fi
- Na końcu nakładamy łatkę test.c.patch dla pliku test.c
patch test.c < test.c.patch