Denne veiledningen gir en grunnleggende oversikt for å bruke en oppdatering til et program eller en fil.
Kommandoen som brukes til å bruke patcher, er patch-kommandoen, men for å kunne bruke en patch må diff-kommandoen også brukes til å levere forskjellene som må patches.
Hvorfor skulle du lage en patch
Tenk deg at du hadde en HTML-fil som følger:
Velkommen til MySite
Ovenstående kilde, når den lastes inn i en nettleser, vil vise ordene "Velkommen til MySite".
Det er vanlig når du programmerer for å være flere versjoner av samme fil. For eksempel ville det være en versjon som er den nåværende live-versjonen, det ville være en annen versjon på utviklingsavdelingen som kan inneholde flere endringer, til slutt kan det være en annen versjon på en utgivelsesgren.
Utgivelsesgrenen ville være den versjonen som brukes av virkelige brukere (det vil si i dette tilfellet besøkende på MySite-nettsiden). La oss si at MySite er på versjon 1.0. Etter en utviklingsfase vil du opprette en utgivelsesgren som vil være i dette tilfellet 1.1. Utviklingsgrenen vil være foran utgivelsesgrenen fordi den kan inneholde endringer som ikke er for utgivelse i versjon 1.2, men vil være for versjon 1.1.
Tenk deg at det var en feil der MySite skulle bli kalt YourSite. Du kan gå til hver avdeling i sin tur og gjøre endringer i den levende versjonen, utviklingsversjonen og utgivelsesversjonen av deg, kunne gjøre endringen som en hurtigreparasjon i live og deretter bruke oppdateringen til utvikling og utgivelse av grener.
Et arbeidet eksempel
Opprett en fil som heter myfile.html med følgende kode i den:
Velkommen til MySite
Dette er et bearbeidet eksempel på å koble kildekoden.
Opprett en annen fil som heter myfile_v2.html med følgende kode i den:
Velkommen til YourSite
Dette er et bearbeidet eksempel på å koble kildekoden.
Den første filen er den opprinnelige nettsiden med overskriften "Velkommen til MySite". Den andre filen er den samme som den første filen, bortsett fra at MyFile er omdøpt til YourFile i teksten.
Hvordan lage Diff-filen
For å lage en oppdatering må vi utarbeide forskjellene mellom myfile.html og myfile_v2.html.
Vi kan gjøre dette med diff-kommandoen som følger:
diff -u myfile.html myfile_v2.html> myfile.patch
Du kan åpne myfile.patch-filen i nano-editoren som følger for å vise den: nano myfile.patch
Linjer som er uendret, vises i blått. Linjer som er fjernet, vises i rødt og linjer som er lagt til, vises i grønt. For å bruke oppdateringen til myfile.html, bruk følgende kommando: patch <myfile.patch Dette vil gjelde endringene som er opprettet ved hjelp av diff-kommandoen til den opprinnelige filen myfile.html. Hvis du vil returnere oppdateringen slik at myfile.html er tilbake til måten den var opprinnelig på, bruker du følgende kommando: patch -R <myfile.patch Lappekommandoen kan brukes til å bruke patcher på tvers av en hel katalogstruktur. Det er langt bedre verktøy enn patch-kommandoen for å lage oppdateringer og sikre god kildekontroll. Det er grunn til at så mange utviklingsprosjekter bruker GIT for kildekontroll. GIT gjør det enkelt å skape en konsekvent forgreningsstrategi. Lappekommandoen er ok for å bruke forskjeller på et bash-skript eller noe enkelt, men du kan like enkelt lage en sikkerhetskopi av filene du vil lappe og bare kopiere de nye filene til samme sted. For mer informasjon, bruk man-kommandoen: mann lapp Slik bruker du patronen ved hjelp av Patch Command
Slik gjenoppretter du en patch
Sammendrag