Anvisningar för att arbeta i GitHub
Innehållsförteckning
1 Inledning
Dokumentet beskriver den metodik som openEHR Sverige följer i sitt arbete med GitHub. Dokumentet är styrande för personer som arbetar med GitHub inom ramen för openEHR Sverige. Om du arbetar med openEHR hos en region, systemleverantör eller dylikt och vill/ska använda GitHub i samband med openEHR-arbetet går det bra följa denna anvisning, alternativt gör en variant som passar er organisation.
Dokumentet ägs och förvaltas av openEHR Sverige. Kontaktuppgifter hittar du på openEHR Sweden.
Dokumentet förutsätter baskunskaper kring GitHub (men tillhandahåller ett antal lathundar som kan användas vid behov) och att den som vill arbeta i GitHub har ett registrerat konto, Skapa ett GitHub-konto.
2 Nyttoeffekter
Genom att följa anvisningarna uppnås följande nyttoeffekter:
Alla gör lika
Arbetsprocedurer blir tydligare
GitHub-material hålls välstädat
Gör det möjligt för nya personer att snabbare sätta sig in i arbete med GitHub inom ramen för openEHR
Över tid kommer det enhetliga sättet att använda GitHub som strategi bidra till att höja kunskapsnivån inom openEHR Sverige och de aktörer som följer instruktionen
3 Anvisning för gemensamt nationellt arbete
Det gemensamma nationella arbete med openEHR-resurser (som arketyper eller templates) som drivs inom/under openEHR Sverige ska följa denna anvisning och ske i teamet Svenskt arketypsamarbete och de repositoryn som ingår, dvs. fram för allt repositoryt/forken modellbibliotek/CKM-Mirror.
Vanliga användningsfall för att arbeta i GitHub är att man vill
skapa en template för en specifik klinisk situation
skapa en arketyp
3.1 Sätt upp en ny branch
Följ nedanstående steg för att sätt upp en ny branch i forken modellbibliotek/CKM-Mirror.
Det är viktigt att forken modellbibliotek/CKM-Mirror uppdateras/synkas, se Synka en fork, innan en ny branch skapas, för att hämta de senaste uppdateringar från uppstream repository:t openEHR/CKM-Mirror.
Visa befintliga brancher i repositoryt för att kolla om det finns en branch för det området som du vill jobba med (om en branch finns för arbetet bör du överväga att jobba vidare i den befintliga branchen)
Skapa en ny branch om det inte finns någon branch för ditt område. Den nya branchen ska skapas från masterbranchen i repositoryt modellbibliotek/CKM-Mirror. Inget arbete ska ske direkt i mastern utan i områdesspecifika brancher.
Namnge branch (om branchen behöver döpas om, följ Döpa om en branch )
3.2 Arbeta med resurser (t.ex. arketyper eller templates)
När du har satt upp en branch, kan nedanstående punkter utgör arbetet med resurser som arketyper och templates:
Ta fram eller uppdatera resurserna (arketyperna eller templates), exempelvis via Archetype Designer
Committa ändringar till en branch och beskriv vilka ändringar du har gjort i ett commit-meddelande (nya modeller sparas per default osorterat under mappen local)
Ta bort filer i en branch vid behov
3.3 Hämta uppdateringar
Ibland uppdateras resurser (arketyperna eller templates), som du behöver i ditt pågående arbete, i CKM:en. Det finns olika sätt att hämta uppdateringarna till din branch.
1 Hämta uppdateringarna från uppstream repository:t
Be ansvariga inom openEHR Sverige att uppdatera/synka forken modellbibliotek/CKM-Mirror, se Synka en fork
Merga in ändringarna från masterbranchen till din branch, se Merga brancher
Kontrollera att de uppdaterade resurser fungerar ihop med ditt resterande arbete
Fortsätt arbeta med dina arketyper eller templates
Rekommendationen är att hämta uppdaterade resurser kontinuerligt (hanteringen av eventuella ändringar blir då lättare)
2 Lägg till önskad fil
Ladda ner filen för resursen som har uppdaterats och som du vill använda (t.ex. för en arketyp) till din dator.
Ladda upp filen till önskat ställe, se Lägg till en fil, i din branch
3.4 Wrap up
När arbetet med resursen är klar, följ nedanstående steg för att avsluta arbetet, utifrån beslut inom openEHR Sverige om hur arbetet tas vidare (beror på om arbetet enbart är relevant inom Sverige eller internationellt)
Om arbetet är relevant inom Sverige
openEHR Sverige beslutar om namn för lämplig mapp
Skapa mapp som undermapp till mappen “openehr-sweden” (se Namnge mapp för att namnge en mapp)
Flytta filerna som har skapats och som ska ingå i master till den nya mappen
Städa bort allt som finns i branchen och som inte ska ingå i master
Skapa en README-fil i mappen som förklarar vad som finns i mappen, se Lägg till en fil
Merga brancher, dvs. merga branchen du arbetar i till masterbranchen.
Ta bort branch som du har arbetat i.
Om arbetet är relevant internationellt
Lägg till resursen (t.ex. arketyper och templates) som har skapats i CKM:en
Få resursen granskad
Eventuella ändringar av resursen som sker under granskningsprocessen sker i CKM:en (dvs. resursen uppdateras inte längre i branchen men i CKM:en)
När resursen har godkänts och ändringen från CKM:en har synkats till openEHR/CKM-Mirror
Ansvarig inom openEHR Sverige uppdaterar/synkar forken modellbibliotek/CKM-Mirror, se Synka en fork, vilket gör att den nya artefakten ska finnas tillgänglig i masterbranchen under respektive mapp under “local”, t.ex. om en ny arketyp har skapats kommer den finnas under mappen “local/archetype”
Ta bort branch som du har arbetat i. OBS! Branchen ska inte mergas tillbaka till mastern, eftersom den nya arketypen har redan “kommit” till mastern från CKM:en via CKM-Mirror
4 Anvisning för GitHub-ansvariga
För att möjliggöra det et gemensamma nationella arbete med openEHR-resurser i GitHub kan GitHub-ansvariga inom openEHR Sverige behöver skapa förutsättningar som att sätta upp en GitHub-yta eller uppdatera en fork.
4.1 Sätt upp GitHub-yta
Följ nedanstående steg för att komma igång med ditt arbete på GitHub
Sapa ett nytt team eller flera vid behov (Det beror på arbetssätt och processer om team behöver skapas. Team kan t.ex. användas för att behörighetshanteringen i GitHub)
Skapa en ny fork utifrån repositoryt modellbibliotek/CKM-Mirror och vid behov från andra repositoryn
Skapa ett nytt repository vid behov för ett fristående repository
4.2 Uppdatera forken modellbibliotek/CKM-Mirror
Forken modellbibliotek/CKM-Mirror ska hållas i synk med uppstream-repository:t openEHR/CKM-Mirror. Detta sker idag inte per automatik utan måste göras manuellt. Följ nedanstående steg för att uppdatera/synka forken:
5 Anvisning för användning av brancher i CKM:en resp. GitHub
CKM branches resp. GitHub branches ska användas i enlighet med följande:
Översättningar görs på brancher i CKM där det finns bra verktygsstöd inbyggt
Annat nationellt och lokalt arbete görs i brancher i Github på lämplig Fork
6 Övning
Om du tillsammans med andra tänkte öva på arketyper eller templates som inte är tänkta att ingå i CKM-Mirror eller vill prova på versionshantering, gå till modellbibliotek/Arbetsyta-openEHR. Följ i övrigt ovanstående steg. Nya brancher kan skapas från masterbranchen i repositoryt modellbibliotek/Arbetsyta-openEHR eller vid behov från andra brancher som finns i repositoryt.