Lær å publisere nettsider på internett, bruke versjonskontroll med Git og samarbeide om kodeprosjekter.
Publisering og versjonskontroll
Du har laget en nettside med HTML, CSS og JavaScript – men den finnes bare på din egen datamaskin. For at andre skal se den, må du publisere den på en tjener. Og for å holde orden på endringene du gjør underveis, bruker du versjonskontroll med Git.
I dette kapittelet lærer du å bruke Git, GitHub og ulike vertsløsninger for å publisere nettsider.
- Spore endringer – se hva som ble endret, av hvem og når
- Gå tilbake – angre endringer ved å gå tilbake til en tidligere versjon
- Eksperimentere – prøve nye ting i en gren (branch) uten å ødelegge hovedkoden
- Samarbeide – flere kan jobbe på samme prosjekt uten å overskrive hverandres arbeid
Git lagrer en komplett historikk av prosjektet ditt, som et uendelig antall lagringspunkter i et dataspill.
Grunnleggende Git-kommandoer
Her er de viktigste kommandoene du trenger:
# Sette opp Git (gjøres en gang)
git config --global user.name "Kari Nordmann"
git config --global user.email "kari@example.com"
# Starte et nytt repository
git init
# Se status – hvilke filer er endret?
git status
# Legge til filer til neste commit (staging)
git add filnavn.html # en fil
git add . # alle endrede filer
# Lagre et øyeblikksbilde (commit)
git commit -m "Legg til kontaktskjema på forsiden"
# Se historikken
git log --onelineArbeidsflyten i Git
Git har tre soner:
1. Working directory – filene du redigerer
2. Staging area – filer som er klare for neste commit (git add)
3. Repository – lagrede øyeblikksbilder (git commit)
Redigere --> git add --> git commit --> Lagret i historikkGitHub og grener
GitHub er en plattform der du lagrer Git-repositorier online. Det lar deg:
- Dele kode med andre
- Samarbeide via pull requests
- Publisere nettsider med GitHub Pages
# Koble lokalt repository til GitHub
git remote add origin https://github.com/brukernavn/prosjekt.git
# Laste opp til GitHub (push)
git push -u origin main
# Hente andres endringer (pull)
git pull origin mainGrener (branches) lar deg jobbe med nye funksjoner uten å påvirke hovedkoden:
# Lage en ny gren
git branch ny-funksjon
# Bytte til grenen
git checkout ny-funksjon
# Gjøre endringer og committe
git add .
git commit -m "Legg til bildegalleri"
# Bytte tilbake og flette inn endringene
git checkout main
git merge ny-funksjonPublisering av nettsider
Det finnes flere måter å publisere nettsider gratis:
GitHub Pages – Publiser direkte fra et GitHub-repository:
1. Lag et repository på GitHub
2. Push HTML/CSS/JS-filene dine
3. Gå til Settings, deretter Pages, velg gren og Save
4. Nettsiden er live på brukernavn.github.io/prosjekt
Netlify – Dra-og-slipp eller koble til GitHub:
1. Gå til netlify.com og logg inn
2. Dra prosjektmappen til nettsiden, eller koble til GitHub
3. Nettsiden publiseres automatisk ved hver push
Vercel – Optimalisert for moderne rammeverk:
1. Koble GitHub-repositoriet til vercel.com
2. Vercel bygger og publiserer automatisk
3. Perfekt for Next.js, React og lignende
.gitignore
Noen filer bør ikke legges inn i Git (passord, bygde filer, avhengigheter):
# .gitignore
node_modules/
.env
.DS_Store
dist/
*.log# 1. Initialiser Git i prosjektmappen
cd mitt-prosjekt
git init
# 2. Legg til alle filer
git add .
# 3. Lag første commit
git commit -m "Første versjon av nettsiden"
# 4. Koble til GitHub (lag repo på github.com først)
git remote add origin https://github.com/kari/min-nettside.git
# 5. Push til GitHub
git push -u origin mainDeretter i GitHub:
1. Gå til repositoriet, Settings, Pages
2. Under Source velger du grenen main og mappen / (root)
3. Klikk Save
4. Etter noen minutter er nettsiden live på: https://kari.github.io/min-nettside
Hver gang du gjør git push, oppdateres nettsiden automatisk!
Oppsummering
- Git er et versjonskontrollsystem som sporer alle endringer i filene dine
- Arbeidsflyten er: redigere, git add (staging), git commit (lagre)
- GitHub lagrer repositorier i skyen og gir verktøy for samarbeid
- Grener (branches) lar deg eksperimentere uten å påvirke hovedkoden
- GitHub Pages, Netlify og Vercel er gratis tjenester for å publisere nettsider
- .gitignore angir filer som Git skal ignorere (passord, avhengigheter, bygde filer)
- Gode commit-meldinger beskriver hva som ble endret og hvorfor
Oppgaver
Dette kapitlet er skrevet av Anthropics toppmodeller (Claude Opus og Claude Fable) og er foreløpig ikke manuelt gjennomgått — kvalitetskontrollen gjøres av uavhengige KI-agenter, og innmeldte feil rettes fortløpende. Funnet en feil? Meld fra, så retter vi den. Les mer om hvordan innholdet lages.