← Område 1 Lämna in · inlämning 1 Det som stoppar

Webbserverprogrammering 1 · område 1 · lektion 5

Lämna in: sista kontrollen innan deadline

Sidan för det sista passet. Inget nytt innehåll — här står i vilken ordning du gör de sista sakerna, och vad som brukar gå fel när det är en timme kvar.

Missade du lektionen?

Passet var finputs och inlämning, så du kan göra allt själv — men gör det samma dag, inte på kvällen. Ordningen i avsnitt 1 är densamma som klassen följde. Har du ingen att kamratgranska med: gör kontrollerna i avsnitt 2 på ditt eget projekt, långsamt, som om det var någon annans.

Har du inte fått något att fungera alls: lämna in det du har och skriv i itslearning vad som fastnade. Något slår ingenting, och jag kan hjälpa dig vidare först när jag ser koden.

1. I vilken ordning

Gör i den här ordningen. Den är sorterad efter vad som väger tyngst, inte efter vad som är roligast.

GörVarför just den ordningen
1Kontrollera att projektet startar med dotnet run, utan varningar Startar det inte finns det ingen inlämning att bedöma. Allt annat är meningslöst innan det här stämmer.
2Gå igenom ska-kraven på din egen sajt, punkt för punkt Kryssa av medan du tittar på sidan, inte medan du minns hur den ser ut.
3Läs din arkitektursida och öppna två av filerna den beskriver Den väger tyngst i bedömningen, och det är den som avslöjar om filerna aldrig blivit öppnade.
4Sök efter guidens innehåll i ditt projekt Står scb.se eller Webbresan kvar någonstans är det guidens sajt, inte din. Se översättningstabellen i guiden.
5Kontrollera byggfilerna Den punkt som oftast missas, och den enda som inte syns i webbläsaren.
6Commit, push, kontroll Sist, och med marginal. Det som ligger på din dator är inte inlämnat.

Kraven i sin helhet står i uppgiften, uppdelade på E, C och A. Guidens egen checklista finns i guiden. Den här sidan upprepar dem inte — två listor som säger nästan samma sak blir förr eller senare två listor som säger olika saker.

2. Kamratgranskning

Fem minuter var. Den som granskar sitter vid den andres dator — inte tittar över axeln, utan tar tangentbordet.

  1. Ladda om startsidan fem gånger. Ändras beviset? Ett klockslag som står still är inskrivet för hand och räknas inte.
  2. Läs arkitektursidan och öppna två av filerna den beskriver. Stämmer beskrivningen med vad som faktiskt står i filen?
  3. Klicka igenom alla sidor. Markeras rätt menypost? Fungerar alla länkar?

Skriv sedan tre rader i den andres README.md: en sak som fungerar bra, en sak som ska fixas, och en fråga.

Punkt 2 är den som gör skillnad

En arkitektursida som är skriven utan att filerna öppnats märks direkt när någon annan läser den med filen bredvid. Att upptäcka det nu, av en klasskamrat, är oändligt mycket bättre än att upptäcka det vid rättningen.

3. Byggfilerna i repot

När du kör dotnet run skapas mapparna bin/ och obj/. De innehåller det kompilerade resultatet — inte din kod. De ska inte ligga i repot: de är stora, de ändras vid varje körning, och de går inte att läsa som text.

Kontrollera så här:

git ls-files | grep -E "bin/|obj/"

Ger kommandot inga rader är allt bra. Ger det träffar ligger byggfilerna i repot, och du behöver två saker: en .gitignore, och att ta bort filerna ur det git redan håller reda på.

git rm -r --cached bin obj
git add .
git commit -m "Ta bort byggfiler ur repot"
--cached betyder att filerna blir kvar

git rm --cached tar bort filerna ur repot, inte från din dator. Ditt projekt fortsätter fungera precis som förut. Utan --cached hade de raderats på riktigt — och då hade du fått bygga om, vilket också hade gått bra, men onödigt.

Har du ingen .gitignore: skapa en fil med det namnet i projektets rot, med de här raderna.

bin/
obj/

4. Så lämnar du in

Tre kommandon, och sedan en kontroll som många hoppar över.

git add .
git commit -m "Klar med inlämning 1"
git push
  1. Öppna ditt repo på github.com i webbläsaren.
  2. Se att dina filer faktiskt syns där, och att tidsstämpeln är från nyss.
  3. Kopiera adressen ur adressfältet, till exempel https://github.com/dittnamn/webbresan
  4. Klistra in den i inlämningsrutan i itslearning.
En push du inte kontrollerat räknas inte

Steg 2 är det som avgör. git push kan misslyckas utan att du märker det — fel inloggning, fel remote, eller ett fönster du stängde för tidigt. Ser du filerna på github.com är du klar. Ser du dem inte är du inte klar, oavsett vad terminalen sa.

Repot måste vara publikt

Ett privat repo går inte att rätta. Ligger ditt privat: Settings → längst ned → Change repository visibility.

5. Det som stoppar en inlämning

Felen som brukar dyka upp den sista timmen. Sök på det du ser.

8 rader

SymptomOrsakÅtgärd
bin/ och obj/ ligger i repot .gitignore saknades när du committade första gången Se avsnitt 3
Push nekasInte inloggad, eller fel remote Logga in via editorn. Kontrollera med git remote -v att adressen är ditt repo
Filerna syns inte på GitHubCommittat men inte pushat git push, och ladda sedan om sidan på github.com
Beviset på startsidan ändras inteKlockslaget är inskrivet för hand Det ska räknas ut i @code. Se guiden steg 3
Menyn markerar Start på alla sidorMatch="NavLinkMatch.All" saknas Lägg tillbaka den på startsidans NavLink
Å Ä Ö blev åäöFilen sparad i fel teckenkodning Spara om som UTF-8
Projektet startar inteEtt fel i en .razor-fil Läs det första felet i terminalen, inte det sista. Felen längre ned är oftast följdfel
"Jag har inget att lämna in"Kom aldrig igång Lämna in det som finns och skriv i itslearning vad som fastnade. Något slår ingenting
Deadline är 23:59, inte när lektionen slutar

Du har kvällen om du behöver den. Men det du pushar under lektionen är det jag kan hjälpa dig med — efter klockan fyra är du ensam med felmeddelandet.