Tilbake
3.7
Publisering og versjonskontroll

3.7 Publisering og versjonskontroll

Lær å publisere nettsider på internett, bruke versjonskontroll med Git og samarbeide om kodeprosjekter.

55 min
5 oppgaver
Webhotell og domenerFTP og SSHGit og GitHubVersjonskontrollDeployment og publisering
Du leser den tradisjonelle versjonen
Din fremgang i kapitlet
0 / 5 oppgaver

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.

Versjonskontroll med Git
Git er et versjonskontrollsystem som lar deg:

- 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 --oneline

Arbeidsflyten 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 historikk

GitHub 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 main

Grener (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-funksjon

Publisering 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
✏️Publisere med GitHub Pages
Eksempel: Fra lokal mappe til live nettside

# 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 main

Deretter 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

Lett1 oppgave
Medium3 oppgaver
Vanskelig1 oppgave

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.