
🚀 Git för nybörjare: första guiden till att arbeta med GitHub
Du har skrivit kod, men är rädd för att förstöra den fungerande versionen. Eller så jobbar du i ett team och tappar koll på vem som gjorde ändringar och när. Eller så vill du bara rulla tillbaka ett misslyckat experiment med ett enda kommando.
Allt detta löses av Git, ett versionshanteringssystem som inget modernt projekt klarar sig utan. Men tröskeln för att komma igång skrämmer många: terminal, SSH-nycklar, branches, pull requests.
I verkligheten kan det grundläggande arbetsflödet läras på en timme. Den här guiden handlar precis om det: från installation till din första push, utan utfyllnad och onödig teori.
💡 Snabb översikt:
- Installera Git för ditt operativsystem och ange ditt användarnamn med ett kommando
- Generera en Ed25519 SSH-nyckel och koppla den till ditt GitHub-konto
- Skapa ett repository, länka det till en lokal mapp och gör din första push
- Klona ett befintligt repository via HTTPS eller SSH för lokalt arbete
- Bemästra de moderna kommandona git switch och git restore istället för git checkout
1. Installera Git
Git fungerar på Windows, macOS och Linux. Det mest pålitliga sättet är att ladda ner installationsprogrammet från den officiella webbplatsen git-scm.com.
För Windows, ladda ner 64-bitarsversionen. Under installationen kommer guiden att erbjuda val av standardeditor, strategi för radbrytningar och terminal. För en nybörjare fungerar standardvärdena bra, förutom editorn: istället för Vim är det smidigare att välja Nano eller VS Code.
En detaljerad guide för att installera Git på Windows (med skärmdumpar från varje steg i guiden) finns redan på vår blogg: hur man installerar Git på Windows.
Kontrollera att Git installerades korrekt:
1 git --version
Om terminalen visar en version (till exempel git version 2.48.0) lyckades installationen.
2. Grundläggande Git-konfiguration
Innan din första commit behöver Git en presentation. Namnet och e-postadressen kommer att synas i historiken för varje ändring, så att kollegor kan förstå vem som gjort redigeringen.
1 git config --global user.name "Your Name" 2 git config --global user.email "[email protected]"
Flaggan --global skriver inställningarna globalt, de kommer att användas för alla repositories på maskinen. Om ett specifikt projekt behöver andra uppgifter, upprepa kommandot utan --global medan du står i projektmappen.
Två ytterligare användbara flaggor:
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
Sedan 2020 skapar GitHub repositories med en main-branch istället för master. Raden init.defaultBranch main synkroniserar din lokala installation med denna standard och undviker framtida förvirring.
Kontrollera allt på en gång:
1 git config --list
3. SSH-nyckel och GitHub-anslutning
GitHub stängde av lösenordsstöd för Git-operationer 2021. Dagens standard är SSH-nycklar, och algoritmen är Ed25519 (mer kompakt och säkrare än föråldrad RSA).
Generera en nyckel:
1 ssh-keygen -t ed25519 -C "[email protected]"
Tryck Enter tre gånger: tom lösenfras är okej för lokal utveckling. Terminalen visar fingeravtrycket och sökvägen till nyckeln:

Kopiera nu den publika nyckeln till urklipp. Kommandot beror på operativsystem:
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 enda som återstår är att lägga till nyckeln på GitHub. Logga in på ditt konto, klicka på din avatar i övre högra hörnet och välj Settings:

Gå till fliken SSH and GPG keys i sidofältet:

Klicka på den gröna knappen New SSH Key. Ge nyckeln ett meningsfullt namn i fältet Title (till exempel "Asus Laptop"), klistra in urklippets innehåll i fältet Key och klicka på Add SSH Key.
Kontrollera anslutningen:
1 ssh -T [email protected]
Ett svar som Hi username! You've successfully authenticated... betyder att allt är konfigurerat.
4. Skapa ett repository och första synkronisering
På github.com/new skapar du ett nytt repository: ange ett namn, låt det vara Public eller välj Private, kryssa INTE i "Add a README file" (annars blir det en konflikt vid första push).
Navigera nu i terminalen till projektmappen och kör kedjan:
1 git init # Git initialization in folder 2 git add . # index all files 3 git commit -m "First commit" # fix state
Länka den lokala mappen till fjärr-repositoryt och pusha ändringarna:
1 git remote add origin [email protected]:yourname/yourproject.git 2 git push -u origin main
Flaggan -u kommer ihåg kopplingen "lokal gren → fjärr". Nästa gång räcker ett enkelt git push.
Glöm inte .gitignore, den listar filer som inte ska hamna i repositoryt (loggar, temporära IDE-filer, beroendemappar som node_modules/). Färdiga mallar för alla stackar hittar du på gitignore.io.
5. Klona ett repository
Kloning innebär att du laddar ner någon annans (eller ditt eget, men från GitHub) repository till en lokal maskin med full ändringshistorik.
På repository-sidan klickar du på den gröna Code-knappen:

Ett fönster med tre alternativ öppnas. Välj SSH (om du konfigurerade en nyckel i steg 3) eller HTTPS:

Kopiera URL:en och kör i terminalen:
1 git clone [email protected]:username/repository.git
Git skapar en mapp med repositoryts namn och laddar ner alla filer plus historik. Efter kloning kan du börja jobba direkt.
För daglig gren-navigering använder du moderna kommandon:
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 ersatte det överbelastade git checkout i Git 2.23 och har sedan dess blivit standard. git checkout har inte försvunnit, men switch och restore är säkrare och mer intuitiva.
Om du föredrar ett grafiskt gränssnitt ger GitHub Desktop visuell hantering av kloning, commits och grenar utan terminalen.
Video: komplett Git- och GitHub-kurs på 2 timmar
För att befästa materialet kan du titta på en omfattande videohandledning på engelska, från installation till avancerade scenarier för teamsamarbete:
⁉️🤔 Vanliga frågor
Hur skiljer sig Git från GitHub?
Git är ett versionshanteringsprogram som körs på din dator. GitHub är en webbtjänst som lagrar Git-repositorier i molnet och lägger till samarbetsverktyg: pull requests, kodgranskning, ärenden. Alternativ är GitLab och Bitbucket. Git kan fungera helt utan GitHub, men GitHub kan inte existera utan Git.
Behöver jag lära mig kommandoraden om det finns GitHub Desktop?
GitHub Desktop täcker de flesta vardagliga uppgifter, men terminalen ger full kontroll. Kommandon som
git rebase,git stashochgit cherry-pickär inte alltid självklara i gränssnittet. CI/CD, servrar och DevOps-scenarier fungerar bara via CLI. Vårt råd: börja med Desktop och lär dig kommandoraden parallellt, 2-3 kommandon i taget.
Kan jag byta namn på master-grenen till main i ett befintligt projekt?
Ja, och det är standardpraxis. Kör:
git branch -m master main, sedangit push -u origin mainochgit push origin --delete master. Därefter ändrar du standardgrenen till main i inställningarna för repositoriet på GitHub.
Vad gör jag om Git avvisar en push med felet "failed to push some refs"?
Nästan alltid beror det på att fjärrepositoriet har commits som du inte har lokalt. Gör först
git pull --rebase origin main, lös eventuella konflikter och upprepa sedangit push. Flaggan--rebaselägger dina commits ovanpå fjärrcommitsen och håller historiken linjär.
Hur ångrar jag den senaste commiten som inte har pushats till GitHub än?
git reset --soft HEAD~1, commiten försvinner men ändringarna ligger kvar i index (staged). Du kan fixa och committa om. Om ändringarna inte behövs alls, användgit reset --hard HEAD~1, men var försiktig: hard reset kastar bort filer oåterkalleligt.
Nästa steg: ditt första arbetsflöde
Helhetsbilden efter den här guiden: Git är installerat, SSH-nyckeln är kopplad, repositoriet är skapat och synkroniserat. Du har gått från noll till en arbetsklar miljö.
Nästa steg är praktik. Börja smått: gör tre meningsfulla commits i ett testprojekt, öppna en gren via git switch -c, lägg till en fil och skicka en pull request för att merga in i main. Exakt den här cykeln (commit → gren → PR → merge) upprepas dagligen i vilket team som helst.
Och när du känner dig bekväm, kom tillbaka till oss för avancerade ämnen: git rebase, interaktiv stash, lösning av merge-konflikter och uppsättning av CI/CD med GitHub Actions.



