Patch-management

Uit De Vliegende Brigade
Ga naar: navigatie, zoeken

Sommige verbeteringen of uitbreidingen aan Drupal-modules (of andere Linux-code) worden ter beschikking gesteld als bestanden met de extensie .patch. Die moet je patchen tov. een bepaald origineel bestand. De aanpak is om locaal te patchen en het gepatchte bestand daarna te uploaden. Onder Ubuntu is dat allemaal een fluitje van een cent:

Installatie:

sudo apt-get install patch

Patchen:

patch hoofdbestand patchbestand

waarna het hoofdbestand wordt bijgewerkt.

Om welk bestand gaat het?

[1] Legt uit dat een patchbestand meerdere bestanden kan aanpassen. Je ziet 't aan de regels die met diff beginnen, bv.

diff --git a/feeds.info b/feeds.info

Het oorspronkelijke bestand zou a/feeds.info zijn, en het resulterende bestand b/feeds.info zijn. --git heeft vermoedelijk betrekking op bestanden afkomstig van Git

Toepassen op meerdere bestanden

Plaats de patch in de root van de betreffende module en probeer uit wat werkt. Voorbeelden:

patch < feeds.taxonomy_node_get_terms_fail_959984_82.patch
patch -p0 < feeds.taxonomy_node_get_terms_fail_959984_82.patch
patch -p1 < feeds.taxonomy_node_get_terms_fail_959984_82.patch

De optie -px geeft aan hoeveel prefixes weg te halen aan bestandsnamen. Dat is afhankelijk van de locatie, relatief tov. de te bewerken bestanden. Je merkt vanzelf wat het juiste aantal is.

Bronnen