Göm menyn

729G83 Kognitiv teknologi och artificiell intelligens

Arbetsflöde för git


Continuous integration -- allas ansvar

Continuous integration gå ut på att alltid se till att koden i det gemensamma repot är OK, dvs. körbar (och "leveransklar"). tanken är att en ny medarbetare ska kunna hämta ner koden, och börja köra. Vad man absolut vill undvika är att behöva fråga laget runt, vem som kan tänkas ha senaste, bästa, körbara(?!) versionen av koden...

Enligt CI-arbetsmetoden ligger ansvaret på varje utvecklare i teamet att koden i gemensamma repot är körbar och den senaste, dvs. den version som man ska utgå ifrån om man vill bidra med förbättringar.

Rekommenderad procedur (best practice)

Hämta senaste koden Gör alltid pull innan du börjar koda. Pull hämtar senaste versionen från remote-repot och försöker göra en sammanslagning (merge) med ditt lokala repo.

$ git pull origin master

Arbeta max 1-2 timmar. Se till att planera för ett välavgränsat arbete som kan slutföras inom ett par timmar. Även större arbeten kan delas upp i mindre delar, som kan sparas var för sig. Frekventa snapshots och frekvent synkning mot remote-repot hjälper dina medarbetare att vara 'up-to-date' med din kod, så att de alltid kan utgå ifrån senaste update från dig. När du är klar med din avgränsade arbetsbit:

$ git add .
$ git commit -m "..."

Synka ner igen, innan du synkar upp

$ git pull origin master

Pull kommer att automatiskt försöka slå samman (merge:a) remote-koden med ditt lokala repo. (Vill du bara tjuvtitta, kan du köra fetch och sedan diff, som inte kommer att försöka merge:a.)


Konflikthantera, felsök, fixa. Ta hand om eventuella konflikter innan du pushar tillbaks till remote-repot. Dina beslut om vilken version av en viss kodrad som ska behållas påverkar bara ditt lokala repo. Synka till molnet bara om du har löst alla konflikter, och testkört (och i förekommande fall felsökt och fixat) den sammanslagna koden! Detta är ditt ansvar, eftersom det är du som sitter på den senaste kodändringen. När du är säker på att den sammanslagna (merge:ade) koden är körbar och felfri:

$ git push origin master

Dina medarbetare kommer att tacka dig för att du har varit omtänksam!

Läs vidare

Originaldokumentation av git


Sidansvarig: Rita Kovordanyi
Senast uppdaterad: 2020-08-31