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.
- 2 sept Inlämning 1 kl 23:59 Repots adress klistras in i itslearning.
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ör | Varför just den ordningen | |
|---|---|---|
| 1 | Kontrollera 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. |
| 2 | Gå 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. |
| 3 | Lä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. |
| 4 | Sö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. |
| 5 | Kontrollera byggfilerna | Den punkt som oftast missas, och den enda som inte syns i webbläsaren. |
| 6 | Commit, 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.
- Ladda om startsidan fem gånger. Ändras beviset? Ett klockslag som står still är inskrivet för hand och räknas inte.
- Läs arkitektursidan och öppna två av filerna den beskriver. Stämmer beskrivningen med vad som faktiskt står i filen?
- 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.
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"
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
- Öppna ditt repo på github.com i webbläsaren.
- Se att dina filer faktiskt syns där, och att tidsstämpeln är från nyss.
- Kopiera adressen ur adressfältet, till exempel
https://github.com/dittnamn/webbresan - Klistra in den i inlämningsrutan i itslearning.
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.
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
| Symptom | Orsak | Åtgärd |
|---|---|---|
bin/ och obj/ ligger i repot |
.gitignore saknades när du committade första gången |
Se avsnitt 3 |
| Push nekas | Inte inloggad, eller fel remote | Logga in via editorn. Kontrollera med git remote -v att adressen är ditt repo |
| Filerna syns inte på GitHub | Committat men inte pushat | git push, och ladda sedan om sidan på github.com |
| Beviset på startsidan ändras inte | Klockslaget är inskrivet för hand | Det ska räknas ut i @code. Se guiden steg 3 |
| Menyn markerar Start på alla sidor | Match="NavLinkMatch.All" saknas |
Lägg tillbaka den på startsidans NavLink |
Å Ä Ö blev åäö | Filen sparad i fel teckenkodning | Spara om som UTF-8 |
| Projektet startar inte | Ett 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 |
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.