GitHub Desktop för dataforskare

Källnod: 1876650

GitHub Desktop för dataforskare

Mindre skrämmande än versionskontroll på kommandoraden.


By Drew Seewald, Datavetare

Versionskontroll är viktigt för att samarbeta om koden, dela den med andra, kunna se gamla versioner av koden och till och med distribuera koden automatiskt. Det kan vara lite förvirrande till en början, men det är väl värt din tid, speciellt om du arbetar i öppen källkod eller i ett team där du ofta kommer att använda versionskontroll för projekt. Här är några av de största funktionerna som gör det värt att använda:

  • Lagrar filändringshistorik med kommentarer
  • Organisera flera användare som redigerar samma projekt samtidigt
  • Underlätta förfaranden för kodgranskning
  • Automatisera arbetsflöden för att rapportera problem, begära förbättringar och distribuera kod

Slappna av, du behöver inte använda kommandoraden
Slappna av, du behöver inte använda kommandoraden
Foto: Dennis van Dalen on Unsplash

 

Funktioner för versionskontroll

 
 
En av huvudfunktionerna i versionskontroll är filändringshistoriken för varje fil i förvaret. Detta fungerar som en ändringslogg för varje fil, så det är alltid möjligt att se vilken kod som kördes någon gång tidigare. Varje gång någon uppdaterar en fil och skickar den nya versionen till förvaret måste de lägga till en kort kommentar. I en perfekt värld beskriver detta vad förändringarna var och varför de gjordes. Om det någon gång finns en fråga om varför något ändrades eller varför, kommer den ansvariga personen att taggas i commit, tillsammans med den ytterligare information de lämnat.

En annan funktion med versionskontroll är möjligheten att skapa grenar. En filial är en ny version av koden som hålls separat. Detta är användbart för att göra och testa ändringar i koden eftersom det inte ändrar huvudgrenen, där den mest uppdaterade fungerande versionen är. Filialer kan också användas av olika användare för att arbeta med olika kod eller funktioner samtidigt. Dessa grenar kan slås samman tillbaka till mastern när de är klara, och det finns en process för att förena skillnaderna mellan dem vid sammanslagning.

Kodgranskning är en bästa praxis när du arbetar med team. En person kan göra allt arbete med en ny funktion i en ny gren, men innan den blint sammanfogas med huvudgrenen bör den granskas av teamet. När en pull-begäran skapas för att flytta koden till huvudgrenen, startar den också en diskussion där teammedlemmar kan prata om koden och begära ändringar innan den slås samman med huvudgrenen. Denna process bör bidra till att förbättra koden som gör den i produktion för att förhindra buggar och avbrott, förbättra effektiviteten hos koden eller till och med få den att matcha en standard för formatering av koden.

En sista anmärkningsvärd fördel med att använda GitHub för versionskontroll är automationsalternativen som den erbjuder. Om det finns en standardchecklista för kodgranskning kan den läggas till som en mall som blir tillgänglig när en pull-begäran skapas, redo att fyllas i när granskningsuppgifterna slutförs. Mallar kan också användas när människor skapar problem så att de kommer ihåg alla detaljer de behöver ange när de skapar ett problem. GitHub erbjuder också åtgärder för att stödja automatisering. Dessa kan utlösas av olika händelser, som att slå ihop kod till mastergrenen. En åtgärd kan köra enhetstester, bygga/kompilera paketkomponenter och till och med distribuera kod till produktion.

Versionskontrollsmaker

 
 
Det finns några versionskontroller med stora namn som du kanske har hört talas om. Några av de mest populära är Git och GitHub.  är den underliggande tekniken för versionskontroll, och GitHub är programvara som förenklar arbetsflödet för versionskontroll.

Git kan användas lokalt, utan behov av ett externt arkiv. Du kan göra alla dina versionskontrolluppgifter på din dators hårddisk. Lokala Git-förråd är idealiska för personliga projekt eller när du inte riktigt är redo att dela din kod med hela ditt team, men ändå vill ha fördelarna med versionskontroll.

GitHub-webbplatsen är ett arkiv för att lagra kod. Många projekt med öppen källkod, som Python- och R-paket, finns på GitHub-webbplatsen. För offentliga arkiv kan vem som helst se revisionshistorik, problem med paketet och dokumentation relaterad till det.

För att ansluta till ett arkiv på GitHub-webbplatsen kan vi använda Git eller GitHub Desktop. För er som älskar ett kommandoradsgränssnitt (CLI), Rebecca Vickery har en bra artikel om använder Git CLI för datavetenskap. Så varför ska du fortsätta läsa? Kommandorader kan vara skrämmande. Det är inget fel med att vilja ha ett grafiskt användargränssnitt (GUI) för att hantera din versionskontroll. GitHub Desktop ger ett tydligt och enkelt gränssnitt med ditt arkiv.

GitHub Desktop Process Flow

 
 
Även om alla kommer att ha ett lite annorlunda processflöde för sitt arkiv, finns det några allmänna steg för att göra ändringar i koden på GitHub:

  1. Skapa en gren
  2. Lägger till commits
  3. Skapar en ny pull-begäran
  4. Slutför kodgranskning
  5. Slår samman pull-begäran

Genom att skapa en filial skapas en kopia av den aktuella produktionskoden. En utvecklare kommer att göra ändringar i filerna och göra ändringar i den nya grenen. Därefter kommer en pull-begäran att öppna diskussion för att lägga till den nya grenens ändringar i produktionskoden, vanligtvis i master- eller huvudgrenen. Kodgranskare kan lägga till kommentarer och begära förtydliganden om ändringarna som gjorts på pull-begäran. När granskningen är klar och alla nödvändiga ändringar har gjorts, kan pull-begäran slås samman med master- eller huvudgrenen och stängas.

Låt oss gå igenom dessa steg mer i detalj och titta på hur man gör var och en med GitHub Desktop.

Skapa en filial (separera den nya koden från den gamla)

 
 
För att göra en ändring, skapa först en ny filial. Om du har full tillgång till förvaret kan du helt enkelt skapa en ny gren på förvarets GitHub-sida.

1a. Klicka på Branch: main



Bild av författaren

 

2a. Skriv namnet på den nya grenen i textrutan. Det kan finnas vissa namnkonventioner för grenar att ta hänsyn till från din organisation för att hålla ordning på saker och ting



Bild av författaren

 

3a. Klicka på Skapa filial



Bild av författaren

 

Den nya grenen kommer nu att väljas.



Bild av författaren

 

Om du inte har full tillgång till förvaret, vilket är vanligt för offentliga projekt, måste du dela förvaret. En ny gren och en gaffel är synonyma. En gaffel kommer att skapas i ett nytt arkiv i motsats till samma som produktionskoden, vanligtvis under din personliga profil. Att dela:

Ib. Klicka på Gaffel uppe till höger



Bild av författaren

 

2b. Vänta tills filerna kopieras



Bild av författaren

 

3b. Den nya gaffeln kommer att väljas



Bild av författaren

 

Lägga till åtaganden (förbättra koden/lägga till funktioner)

 
 
För att göra commits till koden kommer du att klona arkivet till din lokala dator. Detta kopierar koden för dig att arbeta med innan du skickar uppdateringarna tillbaka till förvaret. För att klona förvaret till din lokala dator:

Klicka på klona eller ladda ner.



Bild av författaren

 

Klicka på öppna med GitHub-skrivbordet.



Bild av författaren

 

Om du inte har GitHub Desktop, klicka på ladda ner GitHub Desktop.



Bild av författaren

 

GitHub-skrivbordet kommer att fråga var du ska klona förvaret till på din lokala dator. Detta är fältet Lokal sökväg.



Bild av författaren

 

Klicka på grenen och välj den nyskapade grenen. Detta kommer att uppdatera filerna på din lokala dator med eventuella uppdateringar på den grenen och göra den till den aktiva att lägga till commits till.



Bild av författaren

 

För att göra ändringar, öppna katalogen du valde när du klonade och gör ändringar med din textredigerare eller integrerade utvecklingsmiljö (IDE) som vanligt. Spara filerna.

Återgå till GitHub Desktop. GitHub Desktop skannar ständigt arkivets mappträd och kommer att se alla ändringar du gör. Dessa ändringar kommer att visas i den vänstra rutan. Den högra rutan kommer att förhandsgranska ändringar av den valda filen (vissa filtyper förhandsgranskas inte).



Bild av författaren

 

Varje gång du gör en uppsättning relaterade ändringar, överför dessa ändringar till ditt arkiv. Kom ihåg att lägga till kommentarer till åtagandena så att folk enkelt kan identifiera vad som ändrades. Den övre textrutan är för en snabb beskrivning, men om du har fler anteckningar att lägga till om commit, lägg dem i den större beskrivningstextrutan.

Med ändringar gjorda och kommentarer tillagda, befästa ändringarna.



Bild av författaren

 

Genom att utföra ändringar sparas de bara i de lokala filerna. För att skicka tillbaka ändringarna till GitHub-servern, klicka på push origin. Om det finns commits som inte har skickats tillbaka till servern kommer ett meddelande att visas i den högra rutan som säger Tryck xx commit(s) till ursprungsfjärrkontrollen. Ursprunget är bara ett namn för var förvaret klonades ifrån.



Bild av författaren

 

Öppna en Pull-förfrågan

 
 
Navigera till ditt arkiv på GitHub-servern. Se till att du är på rätt gren. Om du skapade en ny gren på det ursprungliga förvaret, navigera dit. Om du var tvungen att dela förvaret, navigera till förvaret på din personliga profil.

På Dra förfrågningar fliken, klicka på Ny pull-förfrågan.



Bild av författaren

 

Välj den nya grenen som den som ska jämföras, och klicka på skapa pull-begäran. I vårt fall fylls pull-begäran automatiskt i med våra commit-kommentarer.



Bild av författaren

 

Kodgranskning

 
 
Kodgranskning hjälper till att säkerställa att koden vi lägger till eller ändrar är korrekt och har granskats och godkänts av flera personer. Oavsett om du har tillgång till ett arkiv eller inte, bör du alltid låta granskare kontrollera ändringarna. Om det finns några frågor, gå igenom dem som ett team.

Pull-förfrågningar visas under fliken Pull-begäran i förvaret. Varje pull-begäran har en konversation, commits och filer ändrade flikar.

Konversation är där människor kan lägga till frågor eller kommentarer om koden. Du kan formatera dina kommentarer och tagga personer och problem i dina kommentarer.

Commits visar alla commits och kommentarer som gjorts i pull-begäran

Filer ändrade visar vilka filer som ändrades, lades till eller raderades tillsammans med rad för rad jämförelser av kod där tillgängligt



Bild av författaren

 

Slå samman Pull-förfrågan

 
 
I mitt fall ändrades min huvudgren medan jag arbetade med den nya grenen. Det är därför det finns meddelanden som säger att det finns konflikter att lösa. Genom att klicka på knappen Lös konflikter öppnas en redigerare. Det kommer att visa versionen av filen från varje gren, så att du kan ta bort den ena och behålla den andra, eller skapa någon version av båda.



Bild av författaren

 

I det här fallet är versionen från huvudgrenen korrekt. Ändringarna från den andra grenen och separatorerna kan raderas. Konflikten kan markeras som löst och förbinds med sammanslagningen.



Bild av författaren

 

Med kodgranskning och konflikter ur vägen kan pull-begäran slås samman. Återigen kommer det att finnas ett alternativ att ge en kommentar om vad sammanslagningen åstadkommer. Efter sammanslagningen kommer koden att vara en del av master- eller huvudgrenen!



Bild av författaren

 

Och där har du det, du vet nu hur du slutför de mest grundläggande versionskontrolluppgifterna med GitHub och GitHub Desktop!

Jag skriver om datavetenskap, analys och programmeringskoncept. Du kan ansluta till mig på MediumTwitteroch LinkedIn.

Ytterligare läsning

 
 
Förstå GitHub-flödet
När du arbetar med ett projekt kommer du att ha en massa olika funktioner eller idéer på gång vid varje given tidpunkt...

 
Versionskontroll med Git
Wolfman och Dracula har anställts av Universal Missions (en spinoff för rymdtjänster från Euphoric State University) för att...

 
Vad är versionskontroll | Handledning för Atlassian Git
Versionskontroll, även känd som källkontroll, är metoden att spåra och hantera ändringar i programvarukod...

 
Bio: Drew Seewald är en dataforskare på Mercedes-Benz Financial Services. Följ Drew på Twitter @RealDrewData eller anslut på LinkedIn.

Ursprungliga. Skickas om med tillstånd.

Relaterat:

Källa: https://www.kdnuggets.com/2021/09/github-desktop-data-scientists.html

Tidsstämpel:

Mer från KDnuggets