
🚀 Git for nybegynnere: første guide til å jobbe med GitHub
Du skrev kode, men er redd for å ødelegge den fungerende versjonen. Eller du jobber i et team og mister oversikten over hvem som gjorde endringer og når. Eller kanskje du bare vil rulle tilbake et mislykket eksperiment med én kommando.
Alt dette løses av Git, et versjonskontrollsystem som ingen moderne prosjekter kan klare seg uten. Men inngangsbarrieren skremmer mange: terminal, SSH-nøkler, brancher, pull requests.
I realiteten kan den grunnleggende arbeidsflyten læres på en time. Denne guiden handler nøyaktig om det: fra installasjon til din første push, uten fyllstoff og unødvendig teori.
💡 Rask oversikt:
- Installer Git for ditt operativsystem og angi brukernavnet ditt med én kommando
- Generer en Ed25519 SSH-nøkkel og koble den til GitHub-kontoen din
- Opprett et repository, koble det til en lokal mappe og utfør din første push
- Klon et eksisterende repository via HTTPS eller SSH for lokalt arbeid
- Mestre de moderne kommandoene git switch og git restore i stedet for git checkout
1. Installere Git
Git fungerer på Windows, macOS og Linux. Den mest pålitelige måten er å laste ned installasjonsprogrammet fra det offisielle nettstedet git-scm.com.
For Windows laster du ned 64-bitersversjonen. Under installasjonen vil veiviseren tilby å velge standard editor, strategi for linjeskift og terminal. For en nybegynner fungerer standardverdiene fint, bortsett fra editoren: i stedet for Vim er det mer praktisk å velge Nano eller VS Code.
En detaljert guide for installering av Git på Windows (med skjermbilder av hvert trinn i veiviseren) finnes allerede på bloggen vår: hvordan installere Git på Windows.
Sjekk at Git ble installert riktig:
1 git --version
Hvis terminalen viser en versjon (for eksempel git version 2.48.0), var installasjonen vellykket.
2. Førstegangs konfigurasjon av Git
Før din første commit trenger Git en introduksjon. Navnet og e-posten vil vises i historikken for hver endring, slik at kolleger kan forstå hvem som står bak endringen.
1 git config --global user.name "Your Name" 2 git config --global user.email "[email protected]"
Flagget --global skriver innstillinger globalt, de vil gjelde for alle repositories på maskinen. Hvis et spesifikt prosjekt trenger andre data, gjentar du kommandoen uten --global mens du står i prosjektmappen.
To nyttige flagg til:
1 git config --global core.editor "code --wait" # editor for commit messages 2 git config --global init.defaultBranch main # default branch is main, not master
Siden 2020 oppretter GitHub repositories med en main-branch i stedet for master. Linjen init.defaultBranch main synkroniserer din lokale installasjon med denne standarden og unngår fremtidig forvirring.
Sjekk alt på én gang:
1 git config --list
3. SSH-nøkkel og GitHub-tilkobling
GitHub deaktiverte passordstøtte for Git-operasjoner i 2021. Dagens standard er SSH-nøkler, og algoritmen er Ed25519 (mer kompakt og sikker enn utdatert RSA).
Generer en nøkkel:
1 ssh-keygen -t ed25519 -C "[email protected]"
Trykk Enter tre ganger: tom passphrase er greit for lokal utvikling. Terminalen vil vise fingeravtrykket og banen til nøkkelen:

Kopier nå den offentlige nøkkelen til utklippstavlen. Kommandoen avhenger av operativsystemet:
macOS:
1 pbcopy < ~/.ssh/id_ed25519.pub
Linux (Ubuntu):
1 cat ~/.ssh/id_ed25519.pub
Windows (Git Bash):
1 clip < ~/.ssh/id_ed25519.pub
Det eneste som gjenstår er å legge til nøkkelen på GitHub. Logg inn på kontoen din, klikk på avataren din øverst til høyre og velg Settings:

Gå til fanen SSH and GPG keys i sidepanelet:

Klikk på den grønne knappen New SSH Key. I feltet Title gir du nøkkelen et meningsfylt navn (for eksempel «Asus Laptop»), i feltet Key limer du inn innholdet fra utklippstavlen og klikker Add SSH Key.
Sjekk tilkoblingen:
1 ssh -T [email protected]
Et svar Hi username! You've successfully authenticated... betyr at alt er konfigurert.
4. Opprette et repository og første synkronisering
På github.com/new oppretter du et nytt repository: angi et navn, la det stå som Public eller velg Private, IKKE kryss av for «Add a README file» (ellers vil det oppstå en konflikt ved første push).
Naviger nå til prosjektmappen i terminalen og kjør denne kjeden:
1 git init # Git initialization in folder 2 git add . # index all files 3 git commit -m "First commit" # fix state
Koble den lokale mappen til det eksterne repositoryet og push endringene:
1 git remote add origin [email protected]:yourname/yourproject.git 2 git push -u origin main
Flagget -u husker koblingen «lokal branch → remote». Neste gang holder det med en enkel git push.
Ikke glem .gitignore, den lister opp filer som ikke skal havne i repositoryet (logger, midlertidige IDE-filer, avhengighetsmapper som node_modules/). Ferdige maler for enhver teknologistakk finner du på gitignore.io.
5. Klone et repository
Kloning er å laste ned andres (eller ditt eget, men fra GitHub) repository til en lokal maskin med full endringshistorikk.
På repository-siden klikker du på den grønne Code-knappen:

Et vindu med tre alternativer åpnes. Velg SSH (hvis du konfigurerte en nøkkel i steg 3) eller HTTPS:

Kopier URL-en og kjør i terminalen:
1 git clone [email protected]:username/repository.git
Git vil opprette en mappe med repository-navnet og laste ned alle filer pluss historikk. Etter kloning kan du begynne å jobbe umiddelbart.
For daglig branch-navigasjon bruker du moderne kommandoer:
1 git switch feature-branch # switch to existing branch 2 git switch -c new-feature # create new branch and switch 3 git restore file.txt # roll back changes in file
De erstattet den overbelastede git checkout i Git 2.23 og har siden blitt standarden. git checkout har ikke forsvunnet, men switch og restore er tryggere og mer intuitive.
Hvis du foretrekker et grafisk grensesnitt, gir GitHub Desktop visuell håndtering av kloning, commits og brancher uten terminal.
Video: komplett Git- og GitHub-kurs på 2 timer
For å befeste stoffet kan du se en omfattende videoopplæring på engelsk, fra installasjon til avanserte teamarbeidsscenarioer:
⁉️🤔 Ofte stilte spørsmål
Hva er forskjellen på Git og GitHub?
Git er et versjonskontrollprogram som kjører på datamaskinen din. GitHub er en nettjeneste som lagrer Git-repositorier i skyen og legger til samarbeidsverktøy: pull requests, kodegjennomgang, issues. Alternativer er GitLab og Bitbucket. Git kan fint fungere uten GitHub, men GitHub kan ikke eksistere uten Git.
Må jeg lære meg kommandolinjen når GitHub Desktop finnes?
GitHub Desktop dekker de fleste dagligdagse oppgaver, men terminalen gir full kontroll. Kommandoer som
git rebase,git stashoggit cherry-picker ikke alltid like opplagte i GUI-et. CI/CD, servere og DevOps-scenarier fungerer bare via CLI. Vårt råd: start med Desktop, og lær kommandolinjen parallelt, 2-3 kommandoer om gangen.
Kan jeg endre navn på master-grenen til main i et eksisterende prosjekt?
Ja, og dette er standard praksis. Kjør:
git branch -m master main, derettergit push -u origin mainoggit push origin --delete master. Etter det endrer du standardgrenen til main i repositorieinnstillingene på GitHub.
Hva gjør jeg hvis Git avviser en push med feilmeldingen «failed to push some refs»?
Nesten alltid er årsaken at det eksterne repositoriet har commits som du ikke har lokalt. Kjør først
git pull --rebase origin main, løs eventuelle konflikter, og gjenta derettergit push. Flagget--rebaselegger dine commits på toppen av de eksterne, og holder historikken lineær.
Hvordan angrer jeg den siste commiten som ikke er pushet til GitHub ennå?
git reset --soft HEAD~1, commiten forsvinner, men endringene forblir i indeksen (staget). Du kan rette opp og committe på nytt. Hvis du ikke trenger endringene i det hele tatt, brukgit reset --hard HEAD~1, men vær forsiktig: hard reset sletter filer irreversibelt.
Veien videre: din første arbeidsflyt
Helhetsbildet etter denne guiden: Git er installert, SSH-nøkkel er tilkoblet, repositoriet er opprettet og synkronisert. Du har gått fra null til et arbeidsklart miljø.
Neste steg er praksis. Start i det små: gjør tre meningsfulle commits til et testprosjekt, opprett en gren via git switch -c, legg til en fil og send en pull request for å flette inn i main. Akkurat denne syklusen (commit → gren → PR → merge) gjentas daglig i ethvert team.
Og når du blir komfortabel, kom tilbake til oss for avanserte temaer: git rebase, interaktiv stash, løsing av merge-konflikter og oppsett av CI/CD med GitHub Actions.



