Hogyan alkalmazzunk egy patch-t egy fájlra a Linux használatával?

Ez az útmutató alapvető áttekintést nyújt a javítás telepítéséhez egy programhoz vagy fájlhoz.

A javítások alkalmazásához használt parancs a patch parancs, de annak érdekében, hogy egy javítást alkalmazzon, a diff parancsot is fel kell használni a javításhoz szükséges különbségek ellátására.

Miért hozna létre egy javítást?

Képzeld el, hogy van egy HTML-fájlja az alábbiak szerint:



MySite


Welcome to MySite

A fenti forrást web böngészőbe betöltve megjelenik a "Welcome to MySite" szavak.

Gyakori a programozás, ha ugyanannak a fájlnak több verziója létezik. Például létezne egy olyan verzió, amely az aktuális élő verzió, a fejlesztési ágon egy másik verzió is létezhet, amely több változatot is tartalmazhat, végül egy másik változat is lehet egy kiadási ágon.

A felszabadítási ág lenne a verziók által használt valós felhasználók (azaz ebben az esetben a látogatók a MySite honlapján). Mondjuk, hogy a MySite 1.0 verzióban van. A fejlesztési fázis után létrehoz egy kibocsátási ágat, amely ebben az esetben lenne 1.1. A fejlesztés ágazat előreléphet a kiadási ágon, mert olyan módosításokat tartalmazhat, amelyek nem esedékesek az 1,2-es verzió kiadásáért, hanem az 1.1-es verzióra vonatkoznak.

Képzeld el, hogy volt egy hiba, ami miatt a MySite nevezhető YourSite-nek. Lehet, hogy mindegyik fióktelephez fordul, és változtatásokat végezhet az élő verzióban, fejlesztési verzióban és kiadási verziójában, a változást hot fixként élőben is végrehajthatja, majd alkalmazhatja a javítást a fejlesztési és kiadási ágakra.

Egy működő példa

Hozzon létre egy fájlt myfile.html néven, és a következő kódot:



MySite


Welcome to MySite

Ez egy példa a forráskód foltjának.

Hozzon létre egy másik fájlt a következő kóddal: myfile_v2.html



sajatwebhely


Welcome To YourSite

Ez egy példa a forráskód foltjának.

Az első fájl az eredeti weboldal, amelynek címe: "Welcome to MySite". A második fájl ugyanaz, mint az első fájl, kivéve a MyFile nevet a YourFile szövegbe.

A Diff fájl létrehozása

A javítás létrehozásához meg kell vizsgálnunk a különbségeket a myfile.html és a myfile_v2.html között.

Ezt a diff parancs segítségével a következőképpen tehetjük meg:

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

A nano szerkesztőben megnyithatja a myfile.patch fájlt az alábbiak szerint:

nano myfile.patch

A nem változó sorok kék színnel jelennek meg. Az eltávolított vonalak piros színűek és a hozzáadott vonalak zölden jelennek meg.

A javítás alkalmazása a javítás paranccsal

A javításnak a myfile.html fájlra történő alkalmazásához használja a következő parancsot:

javítás

Hogyan viselkedni visszaszerez egy javítást

Ez a diff parancs használatával létrehozott módosításokat a myfile.html eredeti fájlra fogja alkalmazni.

Ha vissza szeretné állítani a javítást, hogy a myfile.html visszaálljon a következő parancsra:

patch -R

összefoglalás

A patch parancs segítségével fel lehet használni a javításokat egy teljes könyvtárstruktúrán.

Sokkal jobb eszközök, mint a patch parancs a javítások létrehozásához és a jó forrásellenőrzés biztosításához.

Van oka annak, hogy sok fejlesztési projekt használja a GIT for source control. A GIT megkönnyíti a konzisztens elágazási stratégia kialakítását.

A javítás parancs ok arra, hogy a különbségeket egy bash parancsfájlra vagy valami egyszerűen alkalmazzuk, de ugyanúgy egyszerűen létrehozhatunk biztonsági másolatot azokról a fájlokról, amelyeket meg akarunk javítani, és egyszerűen másolnunk kell az új fájlokat ugyanazon a helyen.

További információkért használja a man parancsot:

ember tapaszt