Changes between Version 1 and Version 2 of lab-intro


Ignore:
Timestamp:
Feb 14, 2009, 4:49:51 PM (15 years ago)
Author:
Leon Kos
Comment:

Napredna uporaba SVN

Legend:

Unmodified
Added
Removed
Modified
  • lab-intro

    v1 v2  
    1919== Subversion ==
    2020
     21
     22Datoteke ki so že pod kontrolo SVN lahko prosto urejamo z urejevalnikom. Stanje datotek v imeniku SVN izpišemo z ukazom
     23
     24{{{
     25#!sh
     26svn status
     27?      rezultat.dat
     28M      vaja
     29M      vaja1.c
     30}}}
     31Vprašaj pred imenom pomeni, da datoteka ali imenik ni pod SVN nadzorom in za take datoteke so možni naslednji ukrepi:
     32 1. Ne zmenimo se za opozorilo.  Ker pri večjem številu opozoril lahko kakšno pomembno datoteko spregledamo to ti priporočljiv način dela
     33 1. Če je datoteka pomembna in se je ne da enostavno izpeljati (prevesti) iz drugih datotek, se datoteko da pod SVN nadzor z ukazom {{{ svn add datoteka }}}
     34 1. Nastavimo, katere datoteke se v imeniku ignorirajo. To je priporočeno za vse datoteke, ki so rezultat pretvorbe ali so pomožnega tipa. V imeniku nastavimo spregledovanje datotek z ukazom {{{svn pe svn:ignore . }}}
     35V zgornjem primeru dodamo ignoriranje za vse datoteke s končnico *.dat in vaja1
     36
     37Datoteke, ki so spremenjene (Modified) imajo pred imenom črko M, kar pomeni, da je lokalna kopija različna od tiste, ki smo jo nazadnje osvežili z ukazom
     38{{{
     39#!sh
     40svn update
     41}}}
     42
     43Če želimo izpis naših popravkov to naredimo z ukazom
     44{{{
     45#!sh
     46svn diff datoteka.c
     47}}}
     48ali samo {{{svn diff}}} za vse spremembe v spremenjenih datotekah.
     49
     50Svoje spremembe pošljemo na SVN strežnik z ukazom
     51{{{
     52#!sh
     53svn ci -m "Spremenjen format izpisa"
     54Sending        vaja1.c
     55Transmitting file data ..
     56Committed revision 260.
     57}}}
     58Pri tem se pošljejo na strežnik spremembe vse spremembe spremenjenih datotek. Datoteka vaja1 je bila pod nadzorom in se je vseeno poslala, kot sprememba, čeprav je bilo dodano vaja1 v svn:ignore, kar pomeni, da je svn:ignore le pomoč pri izpisu stanja in ne izključuje datotek, ki jih ročno damo pod SVN kontrolo. Za datoteko vaja1 je bilo to narejeno pomotoma saj izvršnih datotek ne shranjujemo na stražnik, zato lahko z ukazom
     59{{{
     60#!sh
     61svn del vaja1
     62}}}
     63hkrati lokalno pobrišemo in označimo datoteko vaja1 za brisanje na strežniku, kar vidimo pri izpisu kot črko D pred datoteko:
     64{{{
     65leon@duo:~/p/ppgplasma/doc$ svn st
     66D      vaja1
     67}}}
     68Novo datoteko damo pod kontrolo z ukazom
     69{{{
     70svn add datoteka
     71}}}
     72Podobno velja za imenike in preimenovanja/kopiranja/premikanja datotek kjer uporabimo ukaz
     73{{{
     74svn mv prvotno.ime novo.ime
     75svn copy prvotno.ime kopija.ime
     76}}}
     77kar je bolje uporabiti kot pa ukaza ADD/DEL saj je pri tem možna sledljivost verzij od prvotne pa vse do zadnje verzije posamezne datoteke, ki se je premikala po imenikih, preimenovala ali kopirala.
     78
     79
    2180== Trac ==
    2281