Vi kommer i år att använda git och GitLab
för att arbeta med inlämningsuppgifterna, GitLab är en av flera stora web-sites som gör det enkelt för användarna att utveckla program och texter tillsammans (andra populära exempel är GitHub
och Bitbucket
). Vi har valt att använda just GitLab i kursen eftersom det är helt gratis, och är bra nog för att användas av bland andra NASA och CERN.
För att använda GitLab måste man kunna använda git, och för att använda det fullt ut måste man förstå hur man använder git på två nivåer:
'Lokalt', dvs kommandon som git init
, git stage
, git reset
, git diff
, git commit
, git log
, git branch
, git checkout
och git merge
.
Med flera repositories ('remotes'), dvs git clone
, git push
, git fetch
, git pull
och git rebase
(rebase
används också ofta bara lokalt).
Ni behöver dock inte lära er allt om git för att använda det i projekten, tidigare år har grupperna suttit tillsammans och skrivit allting, och det kan även ni göra om ni vill. Om ni gör det behöver ni bara göra git commit
till master
med jämna mellanrum, och git push
till GitLab när det är dags att redovisa.
För den som vill lära sig mer om git, och kanske utnyttja möjligheten att arbeta var och en för sig, finns det massor av tutorials, ni kan säkert googla fram bra material på egen hand. Ett bra ställe att börja är dokumentationen på gits hemsida, där det bland annat finns en gratis bok, tutorials och demo-videos -- ett förslag är att börja med kapitel två i deras tutorial, Git Basics.
Vi hade en frågestund/genomgång på tisdagslunchen i läsvecka 2, och kommer troligen att ha en på måndagen i läsvecka 3 (beroende på utfallet av frågan på Moodle).
För att komma igång med inlämningsuppgiften måste åtminstone en av gruppmedlemmarna ha ett konto på GitLab (det är gratis, och jag kan rekommendera er alla att skapa ett konto). För att redovisa måste ni dessutom skapa ett projekt omd-computer
inne i GitLab, och i inställningarna uppe till höger på projektet gå in under Members
(se figur nedan), och addera er handledare (ulf.asklund
eller christian.soderberg
) som Reporter
, så att vi kan kommentera er kod och lägga till 'issues'.
Jag svarar gärna på frågor i samband med föreläsningar, seminarier och lunchgenomgångar.