Sette opp Git
Denne guiden hjelper deg med å sette opp Git korrekt for å jobbe med echo’s kodebase. Du lærer å konfigurere Git, sette opp SSH-nøkler, og følge våre arbeidsflyter.
Forutsetninger
Section titled “Forutsetninger”- Git installert på maskinen din
- GitHub-konto
- Tilgang til echo-webkom organisasjonen på GitHub
1. Installer Git
Section titled “1. Installer Git”# Installer via Homebrew (anbefalt)brew install git
# Eller last ned fra git-scm.com
Windows
Section titled “Windows”Last ned Git for Windows fra git-scm.com. Dette inkluderer Git Bash som gir deg en Unix-lignende terminal på Windows.
Anbefaling: Vurder å bruke WSL (Windows Subsystem for Linux) for en bedre utviklingsopplevelse.
Linux (Ubuntu/Debian/WSL)
Section titled “Linux (Ubuntu/Debian/WSL)”sudo apt updatesudo apt install git
2. Konfigurer Git
Section titled “2. Konfigurer Git”Sett opp din identitet i Git med navn og e-post:
git config --global user.name "Ditt Navn"git config --global user.email "din.epost@student.uib.no"
Anbefalt konfigurasjon for echo Webkom
Section titled “Anbefalt konfigurasjon for echo Webkom”# Sett standard editor (valgfritt - velg din favoritt)git config --global core.editor "code --wait" # VS Code# ellergit config --global core.editor "vim" # Vim
# Bedre log-formateringgit config --global alias.lg "log --oneline --graph --decorate --all"git config --global alias.st "status -sb"git config --global alias.br "branch"
3. Sett opp SSH-nøkler
Section titled “3. Sett opp SSH-nøkler”SSH-nøkler gir sikker autentisering uten å måtte skrive inn passord hver gang.
Generer SSH-nøkkel
Section titled “Generer SSH-nøkkel”Generer en SSH-nøkkel med ed25519
-algoritmen. Du kan også legge til e-posten din med flagget -C
. Dette er egentlig bare en kommentar, og kan være hva enn du tror gjør det lettest for deg å huske hvilken nøkkel det er.
# Generer ny SSH-nøkkelssh-keygen -t ed25519 -C "din.epost@eksempel.no"
# Trykk Enter for å akseptere standard filplassering# Opprett en passphrase (anbefalt for sikkerhet)
Legg til SSH-nøkkel på GitHub
Section titled “Legg til SSH-nøkkel på GitHub”- Kopier den offentlige nøkkelen:
# macOS/Linuxcat ~/.ssh/id_ed25519.pub | pbcopy# Windowscat ~/.ssh/id_ed25519.pub | clip
pbcopy
ogclip
er programmer for å kopierer innholdet til utklippstavlen din.
- Gå til GitHub → Settings → SSH and GPG keys
- Klikk “New SSH key”
- Lim inn nøkkelen og gi den et beskrivende navn (f.eks. “MacBook Pro”)
4. Clone echo-web-mono repository
Section titled “4. Clone echo-web-mono repository”# Clone hovedrepositorygit clone git@github.com:echo-webkom/echo-web-mono.gitcd echo-web-mono
5. Git arbeidsflyt for echo Webkom
Section titled “5. Git arbeidsflyt for echo Webkom”Typisk arbeidsflyt
Section titled “Typisk arbeidsflyt”# 1. Sørg for at main er oppdatertgit switch maingit pull
# 2. Opprett ny branch for din oppgavegit switch -c fornavn/kort-beskrivelse
# 3. Gjør endringer og commitgit add .git commit -m "Add new functionality to profile page"
# 4. Push til ny branchgit push origin fornavn/kort-beskrivelse
# 5. Opprett Pull Request på GitHub
Commit-meldinger
Section titled “Commit-meldinger”Vi har veldig laidback måte å lage commit-meldinger på. Så det viktigste her er bare å skrive på engelsk og i presens. F.eks “Add” ikke “Added”
6. Nyttige Git-kommandoer for daglig bruk
Section titled “6. Nyttige Git-kommandoer for daglig bruk”# Sjekk statusgit status
# Se endringergit diff
# Commit kun deler av filergit add -p
# Undo siste commit (behold endringer)git reset --soft HEAD~1
# Se commit-historikkgit log --oneline --graph
# Bytt mellom branchesgit switch branch-navn
# Slett branch (etter merge)git branch -d branch-navn
# Sync med upstreamgit fetch upstreamgit merge upstream/main
7. Feilsøking
Section titled “7. Feilsøking”Problem: “Permission denied (publickey)”
Section titled “Problem: “Permission denied (publickey)””- Sjekk at SSH-nøkkelen er lagt til på GitHub
- Verifiser SSH-agent:
ssh-add -l
- Test tilkobling:
ssh -T git@github.com
Problem: Merge conflicts
Section titled “Problem: Merge conflicts”# Åpne filer med konflikter i editor# Løs konflikter manueltgit add .git commit -m "Resolve merge conflicts"
Problem: Glemt å lage branch
Section titled “Problem: Glemt å lage branch”# Flytt commits til ny branchgit stash # Lagre ustaged endringergit switch -c ny-branch # Opprett ny branchgit stash pop # Gjenopprett endringer