Ovaj vodič daje osnovni pregled za primenu patchesa na program ili datoteku.
Komanda koja se koristi za primenu zakrpe je komanda patch-a, ali da bi se primenio patch , naredba diff takođe treba koristiti da bi se obezbedile razlike koje treba popraviti.
Zašto ste kreirali zakrpu
Zamislite da ste imali HTML datoteku kako slijedi:
head>
Dobrodošli u MySite h1>
body>
html>
Navedeni izvor prilikom učitavanja u veb pretraživač će prikazati riječi "Dobrodošli u MySite".
Uobičajeno je programiranje da postoji više različitih iste datoteke. Na primjer, postoji jedna verzija koja je aktuelna verzija u živo, u grane za razvoj bi bila još jedna verzija koja bi mogla sadržavati više promjena, na kraju bi mogla biti još jedna verzija na grani za objavljivanje.
Granica za izdavanje biće verzija koju koriste pravi korisnici (tj. U ovom slučaju posetioci na MySite veb lokaciji). Recimo da je MySite u verziji 1.0. Nakon faze razvoja stvorite granu za otpuštanje koja bi bila u ovom slučaju 1.1. Razvojna grana bi mogla biti ispred grane za objavu, jer može sadržati promjene koje ne trebaju izdati u verziji 1,2, ali će biti za verziju 1.1.
Zamislite da je postojala greška u kojoj MySite treba nazvati YourSite. Možete ići u svaku granu i izvršiti promjene u živoj verziji, razvojnoj verziji i verziji koju možete izdati, učinite promjenu kao vruću ispravku u živo, a zatim primijenite zakrpu na razvoj i otpustanje grana.
Radni primer
Kreirajte datoteku pod nazivom myfile.html sa sledećim kodom:
head>
Dobrodošli u MySite h1>
Ovo je radni primer kodiranja izvornog koda. p>
body>
html>
Napravite drugu datoteku pod nazivom myfile_v2.html sa sledećim kodom:
head>
Dobro došli u vašu stranicu h1>
Ovo je radni primer kodiranja izvornog koda. p>
body>
html>
Prva datoteka je originalna web stranica sa naslovom "Dobrodošli u MySite". Druga datoteka je ista kao prva datoteka osim MyFile je preimenovana u vašu datoteku u tekstu.
Kako napraviti difuznu datoteku
Da bi kreirali zakrpu moramo razraditi razlike između myfile.html i myfile_v2.html.
To možemo učiniti pomoću diff naredbe na sledeći način:
diff -u myfile.html myfile_v2.html> myfile.patch
Možete otvoriti datoteku myfile.patch u nano uređivaču na sledeći način kako biste je pogledali:
nano myfile.patch
Linije koje su nepromenjene su prikazane plavom bojom. Linije koje su uklonjene su prikazane crvenom bojom, a dodate linije su zelene.
Kako primijeniti Patch koristeći komandu Patch
Da biste primenili patch na myfile.html, koristite sledeću komandu:
patch Ovo će primijeniti izmjene kreirane pomoću naredbe diff u izvornu datoteku myfile.html. Ako želite vratiti patch tako da se myfile.html vratio na način na koji je prvobitno koristila sljedeću komandu: patch -R Komanda patch-a se može koristiti za primenu zakrpa kroz čitavu strukturu direktorijuma. Postoje daleko bolji alati od komande patch za kreiranje zakrpa i obezbeđivanja dobre izvorne kontrole. Postoji razlog zbog kojeg mnogi razvojni projekti koriste GIT za kontrolu izvora. GIT olakšava kreiranje dosledne strategije razgranavanja. Komanda patcha je u redu za primenu razlike na bash skriptu ili nešto jednostavno, ali isto tako možete lako napraviti rezervnu kopiju datoteka koju želite da zakrpite i jednostavno kopirajte nove datoteke na isto mesto. Za više informacija koristite naredbu man: čovek Kako vratiti patch
Sažetak