Git och GitHub - En pedagogisk guide

Har du fÄtt en frÄga frÄn Cursor om "git fetch"? Den hÀr guiden förklarar vad det betyder och mycket mer om hur Git och GitHub fungerar tillsammans!

đŸ€” Den frĂ„ga du fick frĂ„n Cursor:

"Would you like Cursor to periodically run 'git fetch'?"

ÖversĂ€ttning: "Vill du att Cursor regelbundet ska köra 'git fetch'?"

Vad betyder det?

Cursor frÄgar om den automatiskt ska hÀmta information om Àndringar som gjorts pÄ GitHub (din remote) utan att faktiskt Àndra dina lokala filer. Detta hjÀlper dig att se om nÄgon annan (eller du sjÀlv frÄn en annan dator) har pushat nya Àndringar.

💡 Mitt svar till dig:

Klicka "Yes"! Det Àr en bra funktion som hjÀlper dig att hÄlla koll pÄ vad som hÀnder i ditt projekt utan att störa ditt arbete.

Vad hÀnder? Cursor kontrollerar var 10:e minut om det finns nya Àndringar pÄ GitHub. Du fÄr ett meddelande om det finns nÄgot nytt, men dina filer Àndras inte automatiskt.

🎯 Skillnaden mellan Git och GitHub

MÄnga blandar ihop dessa tvÄ, men de Àr olika saker som fungerar tillsammans:

Visuell förklaring:

đŸ’»
Git
(Lokalt verktyg)
↔
☁
GitHub
(MolntjÀnst)

🔧 Git (Versionshanteringssystemet)

Vad: Ett program som körs pÄ din dator

Gör: HÄller reda pÄ alla Àndringar i dina filer

Var: Jobbar lokalt pÄ din dator

Analogi: Som ett "Save Game"-system för din kod - du kan spara (commit) och gÄ tillbaka till tidigare versioner

☁ GitHub (MolnlagringstjĂ€nsten)

Vad: En webbplats pÄ internet (github.com)

Gör: Lagrar dina Git-repositories i molnet

Var: PÄ internet, tillgÀnglig överallt

Analogi: Som Google Drive eller OneDrive, fast specialiserat för kod och Git-repositories

đŸ€ Hur de fungerar tillsammans:

  1. Git hÄller reda pÄ dina Àndringar lokalt
  2. GitHub tar emot dessa Àndringar och sparar dem i molnet
  3. Du kan sedan hÀmta Àndringar frÄn GitHub till andra datorer
  4. Flera personer kan arbeta tillsammans pÄ samma projekt

📚 Viktiga Git-kommandon att kĂ€nna till

HÀr Àr de viktigaste kommandona du kommer anvÀnda, förklarade pÄ ett enkelt sÀtt:

🌟 De grundlĂ€ggande kommandona

1. Kontrollera status

git status

Visar vilka filer som Àr Àndrade, vilka som Àr stagade (redo att committas), och vilken branch du Àr pÄ.

AnvÀnd: Ofta! NÀr som helst du vill se lÀget.

2. LĂ€gg till filer

git add .

LÀgger till alla Àndrade filer till "staging area" (redo att sparas).

Tips: git add filnamn för en specifik fil.

3. Spara Àndringar (commit)

git commit -m "Meddelande"

Sparar alla stagade Àndringar med ett beskrivande meddelande.

Exempel: git commit -m "Uppdaterade README"

4. Skicka till GitHub (push)

git push

Skickar dina lokala commits till GitHub sÄ de blir synliga online.

NĂ€r: Efter du gjort en eller flera commits.

5. HĂ€mta info (fetch)

git fetch

HÀmtar information om Àndringar pÄ GitHub, men Àndrar INTE dina lokala filer.

SÀkert: Kan aldrig förstöra ditt arbete!

6. HÀmta och slÄ samman (pull)

git pull

HÀmtar Àndringar frÄn GitHub och slÄr samman dem med dina lokala filer.

OBS: Kan orsaka konflikter om samma filer Àndrats.

🔍 Fördjupning: git fetch vs git pull

Detta Àr en viktig skillnad att förstÄ:

Kommando Vad hĂ€nder? Ändrar lokala filer? SĂ€kerhet
git fetch HĂ€mtar info om Ă€ndringar frĂ„n GitHub ❌ NEJ - Bara information ✅ 100% sĂ€kert
git pull HĂ€mtar Ă€ndringar OCH slĂ„r samman dem ✅ JA - Uppdaterar dina filer ⚠ Kan orsaka konflikter

💡 Best Practice:

  1. Kör git fetch för att se vad som finns
  2. Kontrollera Àndringarna
  3. Kör sedan git pull om du vill ha Àndringarna

Detta Àr precis vad Cursor vill göra automatiskt Ät dig!

🔄 Vanliga arbetsflöden

📝 Scenario 1: Du har gjort Ă€ndringar lokalt och vill pusha till GitHub

# 1. Se vad som har Àndrats git status # 2. LÀgg till alla Àndringar git add . # 3. Spara med ett meddelande git commit -m "Uppdaterade README med Git-guide" # 4. Skicka till GitHub git push

🌐 Scenario 2: NĂ„gon annan har gjort Ă€ndringar pĂ„ GitHub

# 1. HÀmta information om Àndringar git fetch # 2. Se vilka Àndringar som finns git status # 3. HÀmta och slÄ samman Àndringarna git pull

🔍 Scenario 3: Kontrollera vad som Ă€r olika mellan lokalt och GitHub

# 1. HĂ€mta senaste info git fetch # 2. Se skillnader git diff origin/main # 3. Se commit-historik git log

⚙ PowerShell-specifika tips

⚠ OBS för PowerShell-anvĂ€ndare!

I PowerShell fungerar INTE && för att kedja kommandon!

❌ Detta fungerar INTE i PowerShell:

git add . && git commit -m "Meddelande" && git push

✅ Gör istĂ€llet sĂ„ hĂ€r i PowerShell:

git add . git commit -m "Meddelande" git push

Eller anvÀnd semikolon:

git add . ; git commit -m "Meddelande" ; git push

🎓 Vanliga frĂ„gor och svar

❓ NĂ€r ska jag anvĂ€nda git fetch?

Svar: AnvÀnd git fetch nÀr du:

❓ Vad hĂ€nder om jag har lokala Ă€ndringar och kör git pull?

Svar: Det kan hÀnda tvÄ saker:

  1. Inga konflikter: Git slĂ„r samman Ă€ndringarna automatiskt ✅
  2. Konflikter: Om samma filer Ă€ndrats mĂ„ste du lösa konflikterna manuellt ⚠

Rekommendation: Committa alltid dina Àndringar först!

# SÀkert arbetsflöde: git add . git commit -m "Mina Àndringar" git pull git push

❓ Vad Ă€r en "merge conflict"?

Svar: En merge conflict uppstÄr nÀr:

Lösning: Du mÄste öppna filen och vÀlja vilken version du vill ha (eller kombinera dem).

❓ Kan jag Ă„ngra en commit?

Svar: Ja! Men var försiktig:

Om du INTE pushat Àn:

# Ångra senaste commit men behĂ„ll Ă€ndringarna git reset HEAD~1 # Ångra senaste commit OCH ta bort Ă€ndringarna (farligt!) git reset --hard HEAD~1

Om du redan pushat:

# Skapa en ny commit som Ängrar den gamla git revert HEAD

🔗 Hur GitHub Pages passar in

Nu nÀr du förstÄr Git och GitHub, lÄt oss koppla ihop med GitHub Pages:

Komplett flöde:

đŸ’»
Lokalt arbete
(Git)
git push →
☁
GitHub
(Lagring)
→ aktiverar
🌐
GitHub Pages
(Webbplats)
  1. Du gör Àndringar lokalt (t.ex. uppdaterar README.md)
  2. Du anvÀnder git add, git commit och git push
  3. GitHub tar emot Àndringarna
  4. GitHub Pages upptÀcker att nÄgot Àndrats
  5. Efter ~1-5 minuter Àr webbplatsen uppdaterad!

🎯 DĂ€rför Ă€r Git viktigt för GitHub Pages:

Varje gÄng du pushar kod till GitHub uppdateras automatiskt din live-webbplats! Det Àr dÀrför det Àr sÄ smidigt att anvÀnda GitHub Pages - du behöver aldrig logga in nÄgonstans eller ladda upp filer manuellt.

📖 Sammanfattning - Allt du behöver komma ihĂ„g

De 6 viktigaste kommandona:

  1. git status - Se vad som hÀnt
  2. git add . - LÀgg till Àndringar
  3. git commit -m "meddelande" - Spara Àndringar
  4. git push - Skicka till GitHub
  5. git fetch - Kolla om det finns nytt pÄ GitHub
  6. git pull - HÀmta Àndringar frÄn GitHub

Svar pÄ Cursors frÄga:

"Would you like Cursor to periodically run 'git fetch'?"

✅ Mitt rĂ„d: Klicka "Yes"!

Cursor kommer dÄ automatiskt köra git fetch var 10:e minut för att hÄlla dig informerad om Àndringar pÄ GitHub, utan att nÄgonsin Àndra dina lokala filer.

🔗 Relaterade resurser

📘 GitHub Pages

LĂ€s om hur GitHub Pages fungerar och hur dina quiz blir webbsidor

LĂ€s guiden →

📄 README

Översikt över hela projektet och alla quiz

Tillbaka till README →

🌐 Officiell dokumentation

Git: git-scm.com/doc

GitHub: docs.github.com

🏠 Startsida

Se alla fredagsquiz

Till startsidan →