Ovaj vodič pruža osnovni pregled primjene zakrpa programu ili datoteci.
Naredba koja se koristi za primjenu zakrpa je naredba za zakrpe, ali kako bi se primijenila zakrpa, naredba diff također se treba koristiti za opskrbu razlika koje treba zakrpati.
Zašto biste stvorili zakrpu?
Zamislite da imate HTML datoteku kako slijedi:
Dobrodošli na MySite
Gore navedeni izvor, kada se učita u web preglednik, prikazuje riječi "Welcome to MySite".
Uobičajeno je programiranje za postojanje više verzija iste datoteke. Na primjer, postojala bi jedna inačica koja je trenutna verzija uživo, postojala bi druga verzija na razvojnoj grani koja može sadržavati više promjena, konačno, možda postoji druga verzija na granici izdanja.
Podružnica za izdavanje bila bi inačica koju koriste stvarni korisnici (tj. U ovom slučaju posjetitelji MySite web stranice). Recimo da je MySite u verziji 1.0. Nakon faze razvoja, izradit ćete podružnicu koja će biti u ovom slučaju 1.1. Podružnica za razvoj bit će ispred grane izdanja jer može sadržavati promjene koje nisu potrebne za puštanje u verziju 1,2, ali će biti za verziju 1.1.
Zamislite da postoji bug koji bi MySite trebao biti nazvan YourSite. Možete ići na svaku od ogranaka zauzvrat i izvršiti promjene na verziji uživo, verziji za razvoj i verziji izdanja koje možete napraviti kao hitni popravak u živo, a zatim primijenite zakrpu na razvoj i puštanje grana.
Radni primjer
Stvorite datoteku pod nazivom myfile.html sa sljedećim kodom:
Dobrodošli na MySite
Ovo je izrađen primjer zakrpnog izvornog koda.
Izradite drugu datoteku pod nazivom myfile_v2.html u njemu sa sljedećim kodom:
Dobrodošli na vaš site
Ovo je izrađen primjer zakrpnog izvornog koda.
Prva datoteka je izvorna web stranica s naslovom "Welcome to MySite". Druga datoteka je ista kao i prva datoteka, osim što je MyFile preimenovan u YourFile u tekstu.
Kako stvoriti Diff datoteku
Da bismo stvorili zakrpu, moramo razlučiti razlike između myfile.html i myfile_v2.html.
To možemo učiniti s naredbom diff kako slijedi:
diff -u myfile.html myfile_v2.html> myfile.patch
Možete otvoriti datoteku myfile.patch u nano uređivaču kako slijedi: nano myfile.patch
Linije koje su nepromijenjene prikazane su plavom bojom. Linije koje su uklonjene prikazane su crvenom bojom, a dodane crte prikazane su zelenom bojom. Da biste primijenili zakrpu na myfile.html, upotrijebite sljedeću naredbu: patch <myfile.patch Ovo će primijeniti izmjene stvorene pomoću naredbe diff na izvornu datoteku myfile.html. Ako želite vratiti zakrpu tako da se myfile.html vraća na izvorni način, upotrijebite sljedeću naredbu: patch -R <myfile.patch Naredba zakrpa može se koristiti za primjenu zakrpa diljem cijele strukture direktorija. Postoje daleko bolji alati od zakrpke naredbe za stvaranje zakrpa i osiguravanje dobre kontrole izvora. Postoji razlog da toliko razvojnih projekata koristi GIT za kontrolu izvora. GIT olakšava stvaranje dosljedne strategije razgraničenja. Naredba zakrpa je u redu za primjenu razlika u bash skripti ili nešto jednostavno, ali isto tako lako možete izraditi sigurnosnu kopiju datoteka koje želite zakrpati i jednostavno kopirati nove datoteke na isto mjesto. Za više informacija upotrijebite naredbu čovjek: čovjek patch Kako primijeniti zakrpu pomoću naredbe za zakrpe
Kako vratiti zakrpu
Sažetak