Ero sivun ”CVS” versioiden välillä
p (svn-wikitys) |
pEi muokkausyhteenvetoa |
||
Rivi 66: | Rivi 66: | ||
* [[Subversion]] | * [[Subversion]] | ||
== | ==Aiheesta muualla== | ||
* [http://www.nongnu.org/cvs/ CVS:n kotisivut] | * [http://www.nongnu.org/cvs/ CVS:n kotisivut] | ||
[[Luokka:Kehitystyökalut]] | [[Luokka:Kehitystyökalut]] |
Versio 29. syyskuuta 2007 kello 13.13
CVS on lyhennys sanoista Concurrent Versioning System. Se on erittäin laajalti käytetty avoimen lähdekoodin versionhallinta- ja yhteistyöohjelma. Useimmat avoimen lähdekoodin projektit tekevät kehitystyötään päivittäen muokatut tiedostot CVS:ään. Sen ansiosta eri puolilla maailmaa työskentelevät kehittäjät voivat pitää itsensä ajan tasalla uusimmissa lähdekooditiedostoissa. Useimmiten CVS-palvelimelta löytyy myös anonyymi tunnus, jolla kuka tahansa voi hakea ohjelman uusimman kehitysversion lähdekoodit itselleen ja kääntää niistä toimivan ohjelman.
CVS:stä on kehitetty edelleen SVN eli Subversion, johon avoimen lähdekoodin projektit ovat nykyään pitkälti siirtyneet.
Käyttö
Aluksi on asetettava CVSROOT-ympäristömuuttujaan tiedot CVS-palvelimesta ja käyttäjätunnuksesta:
$ export CVSROOT=":pserver:tunnus@palvelin.fi:/polku/palvelimella"
Tämän jälkeen kirjaudutaan palvelimelle, jolloin cvs kysyy salasanaasi
$ cvs login Logging in to mtunnus@palvelin.fi) CVS password:
Kirjautumisen jälkeen voidaan ladata projektin tiedostot checkout-komennolla:
$ cvs checkout projekti cvs server: Updating projekti U projekti/tiedosto.c cvs server: Updating projekti/hakemisto U projekti/hakemisto/bar.c
Myöhemmin cvs-puuhun tulleet muutokset voi päivittää itselleen komennolla
$ cvs update ? projekti/Makefile U projekti/README M projekti/tiedosto.c
Jos tämä komento ajetaan jossain projektin alihakemistossa, päivitetään vain kyseinen alihakemisto. Tässä cvs listaa muuttuneita tiedostoja, ja rivin alussa oleva merkki kertoo, miten paikallinen tiedosto eroaa cvs-puussa olevasta tiedostosta.
Merkki | Selitys |
? | Paikallinen tiedosto, jota ei löydy CVS:stä |
M | Paikallista tiedostoa on muutettu |
U | Tiedosto, johon päivitettiin muutoksia |
P | Kuten U, mutta muutokset päivitettiin nopeammalla tavalla käyttäen patchia |
C | Ristiriita paikallisesti muokatun ja cvs-puuhun lisätyn tiedoston välillä |
Kun omalle koneelle kopioituja tiedostoja on muokattu, muutokset lähetetään cvs-palvelimelle commmit-komennolla:
$ cvs commit
Jos halutaan päivittää vain tietty tiedosto, annetaan se komennon loppuun parametriksi. Jos tiedostonimeä ei anneta, päivitetään kaikki tiedostot. Lisäksi palvelimelle voidaan tallentaa kommentti muokkauksesta valitsimella -m:
$ cvs commit -m "Uusi versio readmesta, korjattu typoja" README.txt
Uusia tiedostoja (ja hakemistoja) voidaan lisätä cvs:ään komennolla
$ cvs add tiedosto
Ja poistetaan komennolla
$ cvs remove tiedosto
Molempien komentojen jälkeen muutokset on lähetettävä palvelimelle komennolla cvs commit.
Lopuksi uloskirjautuminen onnistuu komennolla
$ cvs logout