Hoppa till innehåll

Pull requests

  • Vad en pull requestPull request (PR)Ett förslag om att föra in ändringarna från en branch i en annan, så att andra kan granska och diskutera dem först.Läs mer om pull request är, och vad den visar.
  • Att öppna en pull request från en gren som du har skickat till GitHub.
  • Att skriva en beskrivning, och koppla pull requesten till en issue med Closes #1.

I modul 4 och 5 gjorde du själv git merge och skickade main. Då kommer ändringen in utan att någon annan har sett den. En pull request är ett förslag i stället: här är mina ändringar, vill ni föra in dem? Ingenting ändras i main förrän förslaget är godkänt.

En pull request, förkortat PR, gäller två grenarBranchEn egen utvecklingslinje i ett repository, där man kan göra ändringar utan att påverka huvudversionen.Läs mer om grenar:

  • base: grenen som ändringarna ska föras in i, nästan alltid main
  • compare: din gren med ändringarna

GitHub visar skillnaden mellan dem, med samma + och - som git diff, och samlar beskrivning, kommentarer och granskning på ett ställe.

Pull requesten följer grenen. Gör du fler commits på grenen och kör git push, kommer de automatiskt med i samma pull request. Du behöver aldrig öppna en ny.

Skriver du Closes #1 i beskrivningen kopplas pull requesten till issue nummer 1. När pull requesten förs in i main stängs issuen automatiskt. Fixes #1 och Resolves #1 fungerar likadant.

Grenen för uppgiften skapas och skickas som i modul 5:

Terminal
$ git switch -c dag-3-gavle
Switched to a new branch 'dag-3-gavle'
$ git add resplan.txt
$ git commit -m "Lägg till dag 3: Gävle"
[dag-3-gavle 27de834] Lägg till dag 3: Gävle
1 file changed, 1 insertion(+)
$ git push -u origin dag-3-gavle

En bra beskrivning av pull requesten säger vad ändringen gör, varför, och vad granskaren bör titta på:

Beskrivning
Lägger till Gävle som dag 3, mellan Uppsala och Sundsvall.
Kontrollera gärna att dagarna fortfarande står i rätt ordning.
Closes #1
1. Vad händer med main när du öppnar en pull request?
Visa rätt svar
  • Ingenting, förrän pull requesten förs in: En pull request är bara ett förslag.
2. Du har fått synpunkter och rättar på samma gren. Vad gör du sedan?
Visa rätt svar
  • Gör en commit och kör git push – den nya commiten kommer med i samma pull request
3. Vad gör "Closes #1" i beskrivningen av en pull request?
Visa rätt svar
  • Stänger issue nummer 1 när pull requesten förs in i main

  • En pull request är ett förslag om att föra in en gren (compare) i en annan (base), oftast main.
  • Ingenting ändras i main förrän pull requesten förs in.
  • Nya commits på grenen kommer automatiskt med i samma pull request efter git push.
  • Closes #1 i beskrivningen stänger issue nummer 1 när pull requesten förs in i main.