Visa version
Visa
< föregående
|
nästa >
Jämför
< föregående
|
nästa >
Inlämning av labbar via Git
!!! OBS! Denna sida är under utveckling, och skulle kunna innehålla felaktig information. Använd med försiktighet!!!!!
Introduktion till Git
Kursen DD1337 har flera matnyttiga länkar med information om Git här:
https://www.kth.se/social/course/DD1337/page/kurswiki-for-git-och-github/
Extra viktigt är dokumentet "KTH short tutorial", som förklarar hur man gör flera av stegen nedan.
Se denna tutorial för hur man skapar ett konto på KTH Git. Utöver att skapa konto kommer du antagligen att vilja lägga till en publik SSH-nyckel till ditt konto, även detta beskrivs i förutnämnda guide.
Översikt över arbetsflöde i progp
För varje labb i kursen kommer du att få ett repo under organisationen "progp16". Om ditt användarnamn t.ex. är "osquarulda", kommer du för labb "F1" få ett repo "osquarulda-F1" med sökväg https://gits-15.sys.kth.se/progp16/osquarulda-F1.
Du har inte skrivrättigheter direkt till detta repo, utan ska skapa en egen förgrening av detta repo och sedan skicka in din labblösning som en hämtbegäran (Pull request) till ursprungs-repot.
Detaljerade instruktioner
För att testa flödet har du fått ett repo för en låtsas-labb "testlabb" som du kan använda för att experimentera. Det är inget krav att du gör något med denna, men rekommenderas eftersom det hjälper dig bekanta dig med systemet.
Här följer nu detaljerade instruktioner för hur undertecknad (användarnamn "austrin") gör för att utföra och lämna in testlabben.
Förgrena repo
Det första steget är att föregrena repot. I Git-UI:t kan en göra detta genom att klicka på Fork-knappen i repot:
Man får då välja vart man vill placera sin förgrening. Jag väljer att placera den under mitt eget konto (@austrin). Jag får då ett nytt repo som ser ut så här:
Ge tillgång till min labb-kompis
Blah blah
Klona repo och göra labben
Blah blah.
Öppna hämtbegäran
Efter mina uppdateringar talar hemsidan för repot om för mig att den har några commits som inte finns i uppströms-repot som vi förgrenat ifrån (se bild nedan). Jag öppnar nu en hämtbegäran genom att klicka på länken "Pull Request":
Jag får nu upp en sida som jämför uppströms-repot med mitt förgrenade repo, och visar en sammanställning av vilka förändringar som jag håller på att skicka in:
Jag klickar på den stora gröna "Create pull request"-knappen, och får då upp en dialog där jag kan ge en titel och skriva en kort beskrivning av min hämtbegäran. Jag ger titeln "Labblösning" och i beskrivningen skriver jag ned den information som labb-instruktionerna anger att jag ska skriva. Tyvärr råkar jag dock glömma att ange inskicknings-ID för min Kattis-lösning, vilket resulterar i att jag får ett klagomål av den automatiserade labb-handledaren Kodkod:
Jag fixar till detta genom att redigera hämtbegäran-beskrivningen (klickar på den lilla penn-ikonen längst upp till höger i meddelandet). När jag fixat beskrivningen behöver jag tala om för Kodkod att det är dags att granska inlämningen igen, vilket jag kan göra antingen genom att lägga till nya commits till mitt repo, eller genom att stänga och öppna om hämtbegäran. Eftersom det inte finns någon ny kod eller annat material jag vill lägga till så stänger jag hämtbegäran (klickar "Close pull request" längst ned på sidan) och öppnar sedan om den (klickar på knappen "Reopen pull request" som finns på samma ställe där Close-knappen förut fanns). Nu var Kodkod nöjdare!
Kodkod har nu markerat din hämtbegäran som redo för granskning, och nu kommer någon av labb-handledarna på kursen att ta en titt. Detta kan resultera i att du får instruktioner om saker att komplettera, eller att du får en tid för att redovisa din labblösning.
För "testlabb" slutar dock resan här; labbhandledarna kommer inte att titta på den, och du får inte nöjet att redovisa den.