Git är ett smidigt, smart och funktionsspäckat system för hantering av källkod. Det finns en mängd olika smarta funktioner som till exempel versionshantering, möjlighet att utveckla koden i separata utvecklingsgrenar, skapa ”pull requests” med ny eller modifierad kod med mera med mera. Det går att arbeta med Git på en rad olika sätt, däribland med hjälp av kommandoraden.
I detta fall används ofta kommandot ”git” med olika parametrar, till exempel ‘checkout’, ‘add’ och ‘commit’. Ytterligare en möjlighet är att inte bara jobba med lokala kodförråd utan även förråd som finns på externa tjänster, till exempel Github. Detta ger stora möjligheter till samarbete mellan utvecklare på olika håll i världen.
När man arbetar med externa förråd på Github eller liknande krävs att man har rätt användaruppgifter, och många är säkerligen vana vid att ange sitt användarnamn och lösenord manuellt när kod ska checkas in. Sedan några veckor tillbaka är denna möjlighet dock spärrad av säkerhetsskäl, så vad finns det då för möjligheter när man skapat sin PR och vill checka in sitt bidrag till koden?
Kommandoraden funkar bra
Det går fortfarande utmärkt att använda kommandoraden. Man börjar då med att öppna sin Github-sida med en webbläsare. Här öppnas sedan menyn ”Settings/Developer settings/Personal access tokens”. På den sida som då visas klickas ”Generate new token”. Nyckeln namnges samt ges ett utgångsdatum. Som nästa steg anges dess ”scope”, alltså vad den är giltig för. Här är det arbete med förråd (”repositories”, ”repos”) vi har tänkt att ha den till, så valet vad gäller Scope blir kort och gott alternativet ”repo”. Slutligen klickas knappen ”Generate token”, och då visas den nya nyckeln. Observera att denna bara kommer att vara synlig här vid skapandet, och den ska behandlas lika varsamt som ett lösenord.
De tecken som utgör denna token går nu att använda istället för lösenord när man arbetar med Github från kommandoraden. Detta fungerar, men det är onekligen ganska opraktiskt att skriva in eller kopiera in både användarnamn och en lång token vid varje commit. Bättre då att använda ett hjälpmedel och här kan GitHub CLI rekommenderas. Detta program installeras med hjälp av instruktionerna här. Observera att det inte fungerar att söka efter ”gh” i Ubuntus paketförråd och installera det som listas, det är inte samma program som vi använder här. Programmet ska istället installeras enligt instruktionerna på hemsidan där ett nytt paketförråd läggs till som innehåller den version av gh som vi önskar här.
När det är klart körs kommandot ”gh auth login” och ett antal frågor besvaras. Viktigt är att ange att HTTPS ska användas. Notera också att vi inte behöver skapa en token i förväg, det går att autentisera programmet genom att logga in i webbläsaren under konfigurationen. Detta är enklare, för som synes i bilden här intill måste man annars hålla reda på exakt vilka scope som krävs själv. Med webbläsarinloggningen sköts detta automatiskt.
När detta är klar är också installationen och konfigurationen klar, och det går att committa och använda andra git-funktioner utan att ange användaruppgifterna manuellt:
git push origin master
Everything up-to-date