Vedlikehold

For å vedlikeholde produksjonsapparatet uten at det blir rot bør man i hovedsak følge trinnene under. Dette sikrer at produksjonsbranchen (main/master) forblir stabil mellom oppdateringer. For hovedprosjektene er produksjonsbranchen beskyttet slik at dette er eneste måten man kan oppdatere koden på.

1. Opprette issue på GitHub

Dersom du savner noe, eller finner ut at noe ikke fungerer som det skal, kan dette legges inn som en “issue” i det aktuelle repoet på GitHub. Her er det fint om problemet eller ønsket beskrives så detaljert som mulig, slik at det er tydelig hva som må gjøres. Alle kan melde inn ønsker på denne måten.

2. Lag ny branch for å løse en issue

Den som skal oppdatere koden oppretter en ny branch fra dev, og gjør nødvendige endringer/utvikling i denne. Å opprette ny branch gjøres direkte i GitHub under issues, og denne sjekkes deretter ut lokalt. I khfunctions og khvalitetskontroll kan man bruke funksjonen usebranch(NAVN) for å laste inn en spesifikk versjon fra github for testing.

For KHvalitetskontroll og khfunctions er det vitkig å oppdatere verdien av .lastupdate for at oppdateringen skal kommuniseres til alle brukere. Funksjoner leses fra GitHub så dette er i hovedsak viktig for oppdatering av pakkeversjoner og lignende.

3. Pull request

Når oppdateringen er komplett og ferdig testet, kan denne merges inn i dev eller main/master. Fortrinnsvis kan små oppdateringer merges til dev, før flere små endringer kan gå inn i produksjonsbranchen.

For å merge en branch må det opprettes en pull request på GitHub, der man forteller hvilken branch som skal merges med dev eller main/master. Når denne er godkjent vil de nye endringene merges. Da kan man gjerne også slette den ferdige feature-branchen.

Klone prosjektene

For å klone de sentrale prosjektene som skal vedlikeholdes kan du bruke følgende kode:

source("https://raw.githubusercontent.com/helseprofil/misc/main/ProfileSystems.R")
DevelopSystems(path = "Sti til mappe du vil installere prosjektene i")