Vuonna 2020 kurssilla käyteään GITiä.

1. Tapoja käyttää SVN:ää

Aluksi ehdottomasti suositeltavin tapa on pääteohjaus 1:ssä harjoiteltu svnht.

Kaikkia alla mainittuja tapoja voit kuitenkin käyttää ristiin sekä kotona että mikroluokissa. Kannattaa kokeilla eri tapoja. Kuitenkin jos esim. checkouttaat (haet projektin versionhallinnasta tyhjään kansioon) käyttäen svnht PROJNAME -komentoa, myös committaaminen (muutosten vieminen versionhallintaan) kannattaa tehdä automatisoidulla komennolla svnht PROJNAME. Samoin jos checkouttaat TortoiseSVN:llä, niin tee myös committaaminen TortoiseSVN:llä. Näin vältät turhat ristiriidat versionhallinnan hakemistohierarkioissa.

Tee em kohdista yksi tai useampi, suositeltava on tietysti svnht:

✅ Nyt saat ruksia asennetuksi kohdan: svn.

2. Versionhallinnan käyttö lyhyesti

  • yhden kerran: luodaan oma repository mkdir
  • jos mennään koneelle, jossa sisältöä ei vielä ole, tehdään checkout
  • jos mennään koneelle jossa sisältö jo on, tehdään työn aluksi aina update
  • kun työ lopetetaan, lisätään uudet tiedostot add-komennolla ja sitten tehdään commit
  • komentojono svnht tekee automaattisesti tuon kaiken, muulloin joutuu itse miettimään tilanteen mukaan mitä on tekemässä.

3. Varoitus

Kaikki kurssilaiset työskentelevät oikeasti samassa repositoryssä (säilytyspaikka): ohj2ht/k2024.

Muodollisesti jokaisella on oma hakemistonsa, mutta silti voidaan pilata ja muuttaa toistenkin töitä. Toivotaan ettei tätä tapahdu!

Olkaa siis tarkkana että käytätte aina omaa hakemistoanne.

4. Harjoitustöiden hakemistohierarkia SVN:ssä

  • Hakemistorakenne koneen levyllä pitää olla tyyliin:

      c:\mytemp\ohj2\vesal
                       files.txt
                       src 
                         kerho
                           Jasen.java
                           Jasenet.java
                           ...
                       kuvat
                         paaikkuna.png
                         ...
  • Jokainen tekee oman haaransa ja sen alle jokaista vaihetta varten oman haaran.

  • Alla olevassa mallissa tehty "projektille" vesal (korvaa vesal omalla tunnuksellasi ja tietysti kerho, Jasen jne oman työsi vastaavilla nimillä).

    https://svn.cc.jyu.fi/srv/svn/ohj2ht/k2024
      vesal
        trunk
          src 
            kerho
              Jasen.java
              Jasenet.java
              ...
          kuvat
            paaikkuna.png
            ...
          files.txt
        tags
          vaihe1
          vaihe2
          vaihe3
          vaihe4
          vaihe5
          vaihe6
          vaihe7
          jsp

    trunkon se missä tehdään koko ajan hommia. Sen alla on tarvittavat paketit (esimerkissä vain kerho, mutta niitä voi olla enempikin ja niitä voi olla sisäkkäin).

    Kun vaihe tulee valmiiksi, tehdään siitä vaihetta vastaava tag eli trunkkopioidaan sen vaiheen haaraan. Vaihe tarkistetaan aina trunk-haarasta HT:tä näytettäessä ja kun vaihe on hyväksytty, tehdään se tag.

Olisiko tag pitänyt siis tehdä jo ensimmäisestä vaiheesta lähtien vaikkei siinä ole vielä koodia?

VL: periaatteessa joo, koska olihan siellä ne kuvat ja nekin voivat muuttua työn edetessä.

08 Feb 19 (edited 08 Feb 19)

5. Ohjeita jos tarvitaan kotoa U: tai W: -levyä tai SSH:n päällä olevia svn-yhteyksiä

  • Suorakäyttö pitää olla aktivoituna (tarviiko/vl??)

  • kotikäyttö VPN:n kanssa: Katso ohjeet THK:n sivuilta

  • Kotikäytössä Windows: Mounttaa w-levy (lue ohje THK-sivuilta):

       net use w: \\webhs1.ad.jyu.fi\USERNAME * /user:JYUNET\USERNAME  
  • Mitä tehdä jos w-levy ei näy?

    • Varmista ensin salasana.jyu.fi-osoitteesta, että sinulla on WWW aktivoituna (kohta salasanan vaihto ja aktivointinappulassa pitää lukea "Deactivate WWW", silloin OK, muuten paina nappulaa). Tämän jälkeen liitä W-asema hakemistopuuhun käyttäen seuraavaa komentoa:

        net use w: \\webhs1.ad.jyu.fi\USERNAME * /u:JYUNET\USERNAME

      HUOM! Korvaa sana USERNAME omalla käyttäjätunnuksellasi.

  • repositoryn selailu

These are the current permissions for this document; please modify if needed. You can always modify these permissions from the manage page.