Muokataan sivua Patch

Siirry navigaatioon Siirry hakuun
Varoitus: Et ole kirjautunut sisään. IP-osoitteesi näkyy julkisesti kaikille, jos muokkaat. Jos kirjaudut sisään tai luot tunnuksen, muokkauksesi yhdistetään käyttäjänimeesi ja saat paremman käyttökokemuksen.

Kumoaminen voidaan suorittaa. Varmista alla olevasta vertailusta, että haluat saada aikaan tämän lopputuloksen, ja sen jälkeen julkaise alla näkyvät muutokset.

Nykyinen versio Oma tekstisi
Rivi 1: Rivi 1:
{{DISPLAYTITLE:{{lcfirst:{{PAGENAME}}}}}}
Patch on [[:Luokka:Kehitystyökalut|ohjelmistokehityksessä]] käytetty työkalu, jolla voidaan päivittää tiedosto uuteen versioon jos saatavilla on uuden ja vanhan version erot sisältävä [[diff]]-tiedosto.
{{Ohjelma
| nimi=GNU patch
| kuva=
| kuvateksti=
| lisenssi=[[GPLv3+]]
| käyttöliittymä=teksti
| kotisivu=[https://savannah.gnu.org/projects/patch/ savannah.gnu.org/projects/patch]
}}


'''patch''' on [[:Luokka:Kehitystyökalut|ohjelmistokehityksessä]] käytetty työkalu, jolla voidaan päivittää tiedosto uuteen versioon jos saatavilla on uuden ja vanhan version erot sisältävä [[diff]]-tiedosto.
== Käyttö ==
 
==Käyttö==
Esimerkiksi [[diff]]-artikkelissa mainitussa esimerkissä meillä on seuraavanlainen <tt>hello.c</tt>-tiedosto:
Esimerkiksi [[diff]]-artikkelissa mainitussa esimerkissä meillä on seuraavanlainen <tt>hello.c</tt>-tiedosto:
<syntaxhighlight lang="C">
#include <stdio.h>
#include <stdio.h>
void main() {
void main() {
  printf("Hello word");
    printf("Hello word");
}
}
</syntaxhighlight>
Lisäksi sitä on vertailtu tiedostoon <tt>hello2.c</tt> komennolla <tt>diff -u hello.c hello2.c > hello1to2.diff</tt> ja saatu seuraavanlainen sisältö tiedostoon <tt>hello1to2.diff</tt>:
Lisäksi sitä on vertailtu tiedostoon <tt>hello2.c</tt> komennolla <tt>diff -u hello.c hello2.c > hello1to2.diff</tt> ja saatu seuraavanlainen sisältö tiedostoon <tt>hello1to2.diff</tt>:
  --- hello.c      2006-04-07 10:05:08.000000000 +0000
  --- hello.c      2006-04-07 10:05:08.000000000 +0000
Rivi 33: Rivi 21:
  patch -p0 < hello1to2.diff
  patch -p0 < hello1to2.diff
Jonka jälkeen <tt>hello.c</tt>:n sisältö olisi seuraava:
Jonka jälkeen <tt>hello.c</tt>:n sisältö olisi seuraava:
<syntaxhighlight lang="C">
#include <stdio.h>
#include <stdio.h>
int main() {
int main() {
  printf("Hello world");
    printf("Hello world");
  return 0;
    return 0;
}
}
</syntaxhighlight>
Aivan kuten sen kuuluukin olla. Komennossa valitsin -p0 kertoo diffille, että ''patchattavat'' tiedostot (tai tässä tapauksessa yksi tiedosto) ovat samassa hakemistossa kuin patch-tiedosto. Jos patchissa viitattaisiin joissain hakemistoissa oleviin tiedostoihin, esimerkiksi tiedostoon hello/hello.c, voisimme käskeä patchia jättämään yhden hakemistoista huomiotta vivulla -p1. Tämä on hyödyllinen etenkin jos hakemistojen nimet muuttuvat.
Aivan kuten sen kuuluukin olla. Komennossa valitsin -p0 kertoo diffille, että ''patchattavat'' tiedostot (tai tässä tapauksessa yksi tiedosto) ovat samassa hakemistossa kuin patch-tiedosto. Jos patchissa viitattaisiin joissain hakemistoissa oleviin tiedostoihin, esimerkiksi tiedostoon hello/hello.c, voisimme käskeä patchia jättämään yhden hakemistoista huomiotta vivulla -p1. Tämä on hyödyllinen etenkin jos hakemistojen nimet muuttuvat.


Huomaa myös, että patch ei lue patch-tiedoston sisältöä, vaan se välitetään sille syötteenä <-[[Komentorivin perusteet|ohjausmerkin]] avulla.
Huomaa myös, että patch ei lue patch-tiedoston sisältöä, vaan se välitetään sille syötteenä <-[[Komentorivin perusteet|ohjausmerkin]] avulla.


==Katso myös==
== Katso myös ==
*[[diff]]
*[[Diff]]


[[Luokka:Kehitystyökalut]]
[[Luokka:Kehitystyökalut]]
[[Luokka:Komentorivin perustyökalut]]
[[Luokka:Komentorivin perustyökalut]]
Wikin materiaali on kaikkien vapaasti käytettävissä Creative Commons 3.0 - nimi mainittava -lisenssin alaisuudessa. TEKIJÄNOIKEUDEN ALAISEN MATERIAALIN KÄYTTÄMINEN ILMAN LUPAA ON EHDOTTOMASTI KIELLETTYÄ!

Muokataksesi tätä sivua vastaa alla olevaan kysymykseen (lisätietoja):

Peruuta Muokkausohjeet (avautuu uuteen ikkunaan)

Tällä sivulla käytetty malline:

Tämä sivu kuuluu seuraavaan piilotettuun luokkaan:

Noudettu kohteesta ”https://www.linux.fi/wiki/Patch