- COMP.CS.300
- 2. Git
- 2.1 Git ja Gitlab
Git ja Gitlab¶
Opiskelijoille luodaan kurssia varten oma henkilökohtainen työskentelytila Git-versionhallintaan, jonka kautta harjoitustyöt tehdään. Etätietovarasto löytyy yliopiston GitLab:sta course-gitlab.tuni.fi. Tietovarastosta löytyy harjoitustyöhön kurssin puolesta tarjottu koodi sekä testimateriaalia.
Huomaa, että jos käytät QtCreatoria, löytyvät Git:n yleisimmät operaatiot suoraan menusta Tools/Git. Tai voit käynnistää Git Gui:n menusta Tools/Git/Git Tools/Git Gui.
Projektin hakeminen GitLabista (clone)¶
Tässä lyhyt yhteenveto. Voit valita käytätkö Git:ä komentoriviltä vai sen graafisen käyttöliittymän kautta (Git Gui). Molemmat vaihtoehdot toimivat sekä Windowsissa että Linuxissa ja Macissa (ja löytyvät linux-desktopilta). Saatavilla on myös kolmansien osapuolien Git-työkaluja (kuten TortoiseGit), niitä saa käyttää jos haluaa. Git toimii myös QtCreatorista.
Kurssin päivityksien hakeminen git:iin¶
Kurssin edetessä kurssin puolesta tarjottuihin lähdekoodeihin ja testeihin tulee todennäköisesti päivityksiä. Samoin uudet harjoitustyöt tulevat päivityksinä. Päivityksistä ilmoitetaan sähköpostilla, mutta jos olet unohtanut lukea jonkin niistä, kannattaa ongelmien tai puuttuvien tiedostojen sattuessa varmuudeksi yrittää hakea päivitykset ennen kuin pyytää apua kurssihenkilökunnalta. Alla olevat ohjeet kertovat, kuinka saat päivityksiin tarvittavan upstream-tietovaraston määriteltyä git:ssä ja miten haet päivitykset.
HUOM! Saadaksesi päivityksiä on tärkeää, että ET MUUTA kurssin puolen tiedostoja (mainprogram.cc/hh jne.) tai testitiedostoja. Muuten päivitykset tuottavat helposti ongelmia. Jos välttämättä haluat muokata noita tiedostoja, kopioi ne ensin toiselle nimelle ja muista palauttaa alkuperäisiksi ennen päivitysten hakemista!
Uusien harjoitustöiden ja päivitysten hakeminen Git Gui:lla¶
- Käynnistä Git Gui. Valitse “Open existing directory” ja valitse hakemisto, johon hait projektisi. Windowsissa voit myös klikata oikealla kansiota ja valita “Git Gui”.
- Jos et ole tehnyt tätä ennen, määrittele kurssin tietovarasto
yhdeksi tietolähteeksesi. Git Guissa valitse Remote/Add…, ja
kenttään “Name” syötä “upstream” ja kenttään “Location” syötä
https://course-gitlab.tuni.fi/compcs300-october-2024/student_template_project.git
Tämä täytyy tehdä vain kerran jokaiselle haetulle projektille. (Jos käytät Git:ä ssh-yhteyttä käyttäen https:n sijaan, vaihda osoitteeksi ylläolevassa komennossagit@course-gitlab.tuni.fi:compcs300-october-2024/student_template_project.git
) - Sammuta Git Gui ja käynnistä se uudelleen (tämä vaaditaan tietojen päivittymiseksi).
- Hae päivitykset kurssin tietovarastosta paikalliseen tietovarastoosi valitsemalla Remote/Fetch from/upstream.
- Upota päivitykset tiedostoihisi valitsemalla Merge/Local merge ja klikkaamalla Merge. Jos Git Gui valittaa “invalid revisions”, ei ole päivitettävää (tai jokin muu ongelma ilmeni).
- Tuuppaa päivitykset myös GitLab-tietovarastoosi. Valitse Remote/Push klikkaa Push.
Palauttaminen¶
Tällä kurssilla harjoitustöiden palautuksessa käytetään Git-versionhallintaa ja Plussaa. Palautus tehdään seuraavasti:
- Työn toiminnallisuuden testaaminen on myös sinun vastuullasi, muista siis testata myös lokaalisti.
- Varmistu, että kaikki koodisi on lisätty git:iin!! (git add, git commit)
- Päivitä (push) koodisi vielä kertaalleen GitLabiin (git push origin)
- Mene nettiselaimella Course-GitLabiin ja varmistu, että kaikki tiedostosi tosiaan löytyvät sieltä ja sisältö on oikea! (Erityisesti että viimeisin versio on varmasti työnnetty Gitlabiin, tämän saa varmistuttua esim. katsomalla että Gitlab-tietovaraston etusivulla viimeisin commit-viesti on oikea).
- Lähetä Plussaan vasta kuin kaikki on varmasti tallennettu Gittiin.
- Huomaa, että myös dokumentaation tarkastus hoituu automaattisesti docs/readme-gradereiden avulla