Skip to main content

Com aplicar un pegat a un fitxer amb Linux

Anonim

Aquesta guia proporciona una visió bàsica per aplicar un pegat a un programa o arxiu.

El comandament utilitzat per aplicar els pegats és l'ordre del pegat, però per aplicar un pegat, l'ordre diff també s'ha d'utilitzar per subministrar les diferències que han de ser modificades.

Per què crearies un pegat?

Imagineu que teniu un fitxer HTML de la següent manera:

MySite

Benvingut a MySite

L'origen anterior, quan es carrega en un navegador web, mostrarà les paraules "Benvingut a MySite".

És habitual quan es programi que hi hagi diverses versions del mateix fitxer. Per exemple, hi haurà una versió que sigui la versió en viu actual, hi haurà una altra versió a la branca de desenvolupament que pot contenir diversos canvis, finalment, podria haver-hi una altra versió en una branca d'alliberament.

La branca d'alliberament seria la versió utilitzada pels usuaris reals (i, en aquest cas, els visitants al lloc web de MySite). Suposem que MySite és a la versió 1.0. Després d'una fase de desenvolupament, crearà una branca d'alliberament que seria en aquest cas 1.1. La branca de desenvolupament estarà per davant de la branca d'alliberament, ja que pot contenir canvis que no es vagin a publicar a la versió 1,2, sinó que seran per a la versió 1.1.

Imagineu que hi ha hagut un error en què MySite s'hauria d'anomenar YourSite. Podeu anar a cada branca al seu torn i fer canvis a la versió en viu, a la versió de desenvolupament i a la versió de llançament, que podreu fer el canvi com a revisió en directe i després aplicar el pegat al desenvolupament i alliberar branques.

Un exemple treballat

Creeu un fitxer anomenat myfile.html amb el codi següent:

MySite

Benvingut a MySite

Aquest és un exemple treballat del codi font del parche.

Creeu un altre fitxer anomenat myfile_v2.html amb el codi següent:

YourSite

Benvingut a YourSite

Aquest és un exemple treballat del codi font del parche.

El primer fitxer és la pàgina web original amb l'encapçalament "Benvingut a MySite". El segon fitxer és el mateix que el primer fitxer, excepte que MyFile es canvia de nom a YourFile en el text.

Com es crea el fitxer Dif

Per crear un pedaç, hem de treballar les diferències entre myfile.html i myfile_v2.html.

Podem fer això amb l'ordre diff com segueix:

diff -u myfile.html myfile_v2.html> myfile.patch

Podeu obrir el fitxer myfile.patch a l'editor de nano de la següent manera per veure-ho:

nano myfile.patch

Les línies que no es modifiquen es mostren en blau. Les línies que s'han eliminat es mostren en vermell i les línies que s'han afegit es mostren en color verd.

Com aplicar el pegat mitjançant el comandament Patch

Per aplicar el pegat a myfile.html, utilitzeu l'ordre següent:

patch <myfile.patch

Com revertir un pegat

Açò aplica els canvis creats amb l'ordre diff al fitxer original myfile.html.

Si voleu revertir el pedaç de manera que myfile.html estigui de nou en la seva forma original, utilitzeu l'ordre següent:

patch -R <myfile.patch

Resum

La comanda de parche es pot utilitzar per aplicar els pegats a tota una estructura de directoris.

Hi ha eines molt millors que l'ordre de parche per crear taques i garantir un bon control de fonts.

Hi ha una raó per la qual molts projectes de desenvolupament utilitzen GIT per al control de codi font. GIT fa que sigui fàcil crear una estratègia de ramificació coherent.

El comandament del pegat és correcte per aplicar diferències a un script bash o simple, però podria crear una còpia de seguretat dels fitxers que vulgueu parxar i copiar els fitxers nous al mateix lloc.

Per obtenir més informació, utilitzeu l'ordre man:

home parche