You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 15 Next »

Øvingsprosjektet er en essensiell del av TDT4100. Når det kommer ut nye øvinger, blir det lagt til tester i øvingsprosjeket som man kan bruke til å sjekke at oppgaven er gjort riktig. I tillegg kommer løsningsforslag til øvingene i dette prosjektet, samt kode som brukes i øvingsforelesninger. 

Vi har laget to alternativer for å sette opp øvingsprosjektet på PC-en din. Alternativ 1 er den enkleste, og anbefales dersom man ikke har kjennskap til git fra før. Det er også fullt mulig å starte med alternativ 1, og heller bytte til alternativ 2 senere i semesteret. Da bare kopierer du over koden du allerede har laget i prosjektet lokalt på PC-en din til ditt nye prosjekt.

NB:

Uansett hvilket av alternativene dere velger: 

Ikke endre eller legg til noe kode i andre mapper enn minegenkode og ovinger/src/main/java. Endringer på andre steder vil mest sannsynlig føre til "merge conflicts", noe som ikke er ønskelig. "Merge conflicts" oppstår når samme kodelinje har blitt endret til to ulike ting i hver sin branch, og så blir git forvirret når koden skal samles igjen.





Alternativ 1 - Kloning av students-repository


Denne måten er den enkleste å sette opp prosjektet, men har en del begrensninger. Med dette alternativet vil man ikke kunne laste opp sin egen kode til Gitlab, og er avhengig av å ha alt av egen kode lokalt på PCen uten versjonskontroll.


  1. Gå til link
  2. Klon repository til PCen din, for eksempel ved å trykke på knappen som vist under:
  3. Velg en mappe på PCen der prosjektet skal klones. Mappen du velger blir foreldremappen til prosjektet.
  4. Klikk "Select Repository Location", og vent på at VS Code tar seg av resten. 

Laste inn oppdateringer

For å oppdatere prosjektet når det har blitt lagt ut nye tester eller eksempelkode, trenger man bare å kjøre git pull.

For eksempel ved å bruke git-vinduet i VS Code:


Alternativ 2 - Fork din egen versjon (Avansert)


I dette alternativet lager man sin egen kopi (fork) av øvingsprosjektet. Dette gir muligheten til å bruke git aktivt, og lagre sine egne endringer på Gitlab.


  1. Gå til "link" 
  2. Klikk Fork (man må være logget inn på gitlab):


  3. Gi prosjektet et valgfritt navn og beskrivelse. Velg å lagre prosjektet under din egen private Project URL, og velg privat synlighetsnivå (slik at ikke øvingene dine ligger ut offentlig). 
  4. Klikk "Fork Project"
  5. Gå til ditt nye repository på gitlab.
  6. Klon repository til PCen din, for eksempel ved å trykke på knappen som vist under:


    VS Code kommer til å spørre om brukernavn og passord til Gitlab. Har du aktivert tofaktor-autentisering, kan du ikke logge inn med passord, men må bruke en Personal Access Token i stedet for. Sjekk Denne guiden for hvordan man oppretter en slik. 
  7. Velg en mappe på PCen der prosjektet skal klones. Mappen du velger blir foreldremappen til prosjektet.
  8. Klikk "Select Repository Location", og vent på at VS Code tar seg av resten. 


Konfigurer remote


For å kunne laste inn nye tester osv. med et "Forked" prosjekt, må vi først konfigurere originalprosjektet som remote:


  1. Åpne en terminal og naviger til ditt "forked" prosjekt. (For noen tips til navigering i terminalen, sjekke denne siden)
  2. Kjør kommandoen

    git remote add fagstab https://gitlab.stud.idi.ntnu.no/tdt4100/v2022/students.git
  3. Verifiser at remote ble lagt til riktig ved å kjøre 

    git remote show

    Nå skal man se både "origin" og "fagstab".

    "Origin" er ditt personlige forked prosjekt, mens "fagstab" er knyttet til det originale prosjektet.


Laste inn oppdateringer

For å få oppdateringer fra originalprosjektet inn i ditt prosjekt, må vi kjøre en "merge". 

Nødvendige endringer i originalprosjektet vil være på master-branchen, så dette er den eneste man trenger å forholde seg til. 

  1. Åpne en terminal og naviger til prosjektet ditt.
  2. Først henter vi ned nyeste informasjon om originalprosjektet med denne kommandoen:

    git fetch fagstab
  3. For å få med de nyeste endringene kjører man denne kommandoen:

    git merge fagstab/master

    Den vil legge til de nyeste endringene fra originalprosjektet til den branchen du befinner deg på. Om du vil sørge for at ditt gitlab-prosjekt også er oppdatert, kjør git push. 


Feilmeldinger 

Når man laster inn øvingsprosjektet så kan det oppstå feil. Her ligger beskrivelse av og løsning på de feilmeldingene vi har oppdaget. Denne seksjonen vil bli oppdatert fortløpende. 

Cannot access class sun.security.action.GetProperty Action

Hvis du får en feilmelding tilsvarende denne:

     

Så kan dette løses ved å: 

  1. Åpne "command palette" i VS Code ( F1 eller Ctrl + Shift + P)
  2. Skriv: "Preferences: Open Settings (JSON)"
  3. Legg deretter inn:

     

         i settings.json filen.

  • No labels