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 lesevennlige versjonen
Din fremgang i kapitlet
0 / 5 oppgaver

Den ensomme nettsiden

Du har gjort det. Du har bygget en hel nettside med HTML, CSS og JavaScript. Den ser flott ut, den fungerer, den er responsiv og tilgjengelig. Men det er ett problem: den finnes bare på din egen datamaskin. Ingen andre kan se den. Den er som et maleri du har malt, men låst inne i et rom uten dør. For at verden skal få se den, må du publisere den -- løfte den opp på en tjener slik at hvem som helst kan besøke den.

Men det er en utfordring til. Mens du jobbet, gjorde du sikkert mange endringer. Noen ganger ødela du kanskje noe og skulle ønske du kunne gå tilbake. Kanskje vil du jobbe sammen med andre uten at dere overskriver hverandres arbeid. Til dette trenger du versjonskontroll -- og verktøyet alle bruker heter Git.

I denne fortellingen skal vi gjøre nettsiden din fri. Vi skal lære Git, tidsmaskinen som husker hver eneste versjon av koden din. Vi skal møte GitHub, det delte verkstedet i skyen. Vi skal oppdage grener, som lar deg eksperimentere uten frykt. Og til slutt skal vi publisere siden gratis, slik at den blir live på internett -- for alle.

Tidsmaskinen for koden din

Git er et versjonskontrollsystem, og den beste måten å forstå det på er å tenke på lagringspunkter i et dataspill. Når du spiller et vanskelig spill, lagrer du ofte underveis, slik at du kan gå tilbake hvis noe går galt. Git gjør akkurat dette for koden din -- det lar deg lagre øyeblikksbilder av prosjektet, og gå tilbake til hvilket som helst av dem senere.

Med Git kan du spore endringer og se hva som ble endret, av hvem og når. Du kan angre ved å gå tilbake til en tidligere versjon. Du kan eksperimentere trygt i en egen gren uten å ødelegge hovedkoden. Og du kan samarbeide med andre uten at dere tråkker på hverandres arbeid. Git lagrer en komplett historikk over hele prosjektet ditt.

For å forstå hvordan Git jobber, må du kjenne de tre sonene koden beveger seg gjennom. Først er det working directory -- filene du faktisk redigerer. Når du har gjort endringer du vil ta vare på, flytter du dem til staging area med kommandoen git add -- en slags venterom for ting som skal lagres. Til slutt lagrer du et øyeblikksbilde i repository-et med git commit, gjerne med en beskrivende melding. Flyten er enkel å huske: rediger, så git add, så git commit. Et commit er selve lagringspunktet -- et frosset bilde av alle filene på det tidspunktet, med en melding som forteller hva du gjorde og hvorfor.

📝Oppgave Quiz 1

Det delte verkstedet i skyen

Git kjører på din egen maskin, men hva om du vil sikkerhetskopiere historikken, eller jobbe sammen med andre? Da trenger du et sted å lagre Git-prosjektet ditt i skyen, og det mest populære stedet heter GitHub. Tenk på GitHub som et felles verksted der du kan legge fra deg prosjektet, dele det med andre, og hente det fram igjen fra hvilken som helst maskin.

For å sende koden din opp til GitHub bruker du noen få kommandoer. Først kobler du det lokale prosjektet ditt til et GitHub-prosjekt med git remote add origin etterfulgt av adressen. Deretter laster du opp endringene med git push -- det sender commit-ene dine opp i skyen. Vil du hente ned endringer som andre har gjort, bruker du git pull. Push sender opp, pull henter ned. Slik holdes din lokale kopi og kopien på GitHub synkronisert.

GitHub gir deg mye mer enn bare lagring. Det lar deg dele kode med hele verden, samarbeide gjennom det som kalles pull requests -- en måte å foreslå og diskutere endringer på -- og til og med publisere nettsider direkte, som vi snart skal se. For en profesjonell utvikler er GitHub like naturlig som e-post. Nesten all moderne programvareutvikling skjer her, og å mestre det er en av de mest verdifulle ferdighetene du kan ta med deg ut i arbeidslivet.

📝Oppgave Quiz 2

Å eksperimentere uten frykt

En av Gits mest geniale funksjoner er grener, eller branches på engelsk. En gren er en uavhengig utviklingslinje -- en parallell virkelighet der du kan jobbe med noe nytt uten å røre hovedkoden. Hovedgrenen heter vanligvis main, og det er den «ferdige», fungerende versjonen.

Tenk deg at du vil legge til et bildegalleri på nettsiden din, men du er usikker på om det vil fungere. Hvis du roter rett i hovedkoden og det går galt, kan hele siden krasje. Løsningen er å lage en ny gren med git branch bildegalleri, og bytte over til den med git checkout. Nå er du i din egen lille sandkasse. Her kan du eksperimentere fritt, gjøre commits, prøve og feile -- alt uten at hovedgrenen merker noe som helst.

Når galleriet endelig fungerer som det skal, bytter du tilbake til hovedgrenen med git checkout main, og fletter inn arbeidet ditt med git merge bildegalleri. Da smelter de to grenene sammen, og det nye galleriet blir en del av hovedkoden. Hvis eksperimentet derimot mislyktes, kan du bare forlate grenen -- hovedkoden er fortsatt trygg og uberørt. Grener er nettopp dette: friheten til å prøve nye ting uten frykt, og samtidig la flere mennesker jobbe på ulike funksjoner i samme prosjekt samtidig. Det er kanskje den viktigste grunnen til at Git har erobret hele utviklerverdenen.

📝Oppgave Quiz 3

Ut i verden med ett tastetrykk

Nå til det store øyeblikket -- å gjøre siden live. Det fantastiske er at det finnes flere gratis tjenester som gjør publisering nesten latterlig enkelt, og at det henger sømløst sammen med Git og GitHub.

Den mest tilgjengelige er GitHub Pages. Oppskriften er kort: du legger HTML-, CSS- og JavaScript-filene dine i et GitHub-prosjekt, går inn i innstillingene under «Pages», velger hvilken gren som skal publiseres, og trykker lagre. Etter noen minutter er siden din live på en adresse som brukernavn.github.io/prosjekt. Og det aller beste: hver gang du gjør git push med nye endringer, oppdateres nettsiden automatisk. Du redigerer lokalt, pusher, og verden ser den nye versjonen. To andre populære tjenester er Netlify, der du kan dra og slippe en mappe eller koble til GitHub, og Vercel, som er spesielt godt egnet for moderne rammeverk som Next.js og React. Felles for alle tre er at de publiserer automatisk hver gang du dytter opp ny kode.

Et siste, viktig poeng før du slipper alt løs: ikke alle filer bør havne på GitHub. Passord, hemmelige nøkler, store mapper med avhengigheter og maskingenererte filer hører ikke hjemme i et offentlig prosjekt. Til dette lager du en spesiell fil som heter .gitignore, der du lister opp alt Git skal overse -- typisk ting som node_modules/, .env og loggfiler. Da slipper du å lekke noe du ikke burde. Med dette på plass er reisen fullført: fra en ensom side på din egen maskin, til et levende nettsted ute i verden -- versjonert, sikkerhetskopiert, og klart til å vokse.

📝Oppgave Quiz 4

Oppsummering

Vi har gjort nettsiden fri. Git er tidsmaskinen som lagrer øyeblikksbilder av koden din, med arbeidsflyten rediger -- git add -- git commit, gjennom de tre sonene working directory, staging area og repository. Hvert commit er et lagringspunkt du kan vende tilbake til.

GitHub er det delte verkstedet i skyen, der git push sender opp og git pull henter ned, og der samarbeid skjer gjennom pull requests. Grener lar deg eksperimentere trygt i en parallell linje og flette inn med git merge når alt fungerer. Til slutt publiserte vi gratis med GitHub Pages, Netlify eller Vercel -- der siden oppdateres automatisk ved hver push -- og beskyttet hemmeligheter med en .gitignore-fil. Fra ensom fil til levende nettsted: nå kan koden din møte verden.

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.