github tutorial developers how use github
Denna GitHub-handledning förklarar vad som är GitHub och hur man skapar en databas, filial och pull-begäran. Det inkluderar regler för filialskydd och konfliktlösning:
Vad är GitHub?
GitHub är en molntjänst som hjälper utvecklare att lagra och hantera sin källkod samt spåra och kontrollera alla ändringar i källkoden.
Enkelt uttryckt är GitHub avsedd för utvecklare där de kan hantera projektet, vara värd för källkoden och granska dem också. Vi kommer att utforska alla dessa i denna serie.
Lista över handledning i den här GitHub-serien:
Handledning nr 1: GitHub-handledning för utvecklare | Hur man använder GitHub (Denna handledning)
Handledning nr 2: GitHub-projekt, team, gaffel och wiki för dokumentation av projekt
Handledning nr 3: Avancerade Git-kommandon och GitHub-integrationshandledning
Handledning nr 4: GitHub REST API Tutorial - REST API Support i GitHub
Handledning nr 5: GitHub Desktop Tutorial - Samarbeta med GitHub från ditt skrivbord
Självstudie nr 6: TortoiseGit Tutorial - Hur man använder TortoiseGit för versionskontroll
Vad du kommer att lära dig:
Vad är Git?
Git är ett kontrollsystem för öppen källkod där hela källkoden är tillgänglig på utvecklarens maskin. Git är också ett klient- och distribuerat versionskontrollsystem (DVCS) där du kan göra förgrening och sammanslagning.
Komma igång med GitHub
För att komma igång med GitHub kommer vi att utföra följande steg.
- Skapa ett arkiv för att organisera projekt.
- Skapa en filial
- Gör ändringar i filen och begå.
- Skapa en Pull-begäran för att slå samman innehåll.
- Skydda gren
I den andra delen av serien kommer vi också att titta på de andra funktionerna i GitHub som Skapa organisation, Teams, Issues, Milestones, Forks, Releases och Wikis.
Skapa ett GitHub-arkiv
Ett GitHub-arkiv innehåller projektets artefakter som källkod, dokument, bilder etc. Vi kommer att skapa och använda ett demo-arkiv för att utföra alla ovanstående steg.
Logga in på Github.com och Skapa ett nytt arkiv . Klicka på Ny knapp.
Lägg till nedanstående repoinformation som visas och klicka på Skapa förvar . Ange åtkomst till antingen privat eller offentligt. Det är bättre att ställa in det offentligt eftersom få funktioner är beroende av denna åtkomst.
Obs! Användaren som skapar förvaret är ägaren till GitHub-förvaret.
Förvaret skapas med en README-fil.
Lägga till samarbetspartners till GitHub Repository
Vi vill att teamet ska arbeta med detta förvar. För detta måste vi bjuda in samarbetspartnerna att arbeta med förvaret. För att lägga till medarbetare, gå till huvudsidan i arkivet och klicka på inställningar ikon.
Klicka på Samarbetare till vänster och lägg till de medarbetare som har ett Github-konto. En inbjudan skulle skickas och medarbetarna skulle behöva acceptera inbjudan.
Medarbetare läggs till enligt nedan. Senare, i denna handledning, kommer vi att se hur Collaborators kommer att läggas till som granskare för pull-begäran som skapats för att slå samman koden.
Utföra en grundläggande C utelämna
Öppna README-filen och utför ett grundläggande engagemang. Klicka på Redigera ikon för att börja ändra filen.
Ändra filen, lägg till en kommentar och klicka på Begå .
Filen är förbunden (ändringar sparade) till Github Repository.
Få åtgärder för att skapa mappar och filer i förvaret kommer att ses.
Så här skapar du en mapp och en fil: Klicka på Skapa ny fil -knappen på lagringsnivå. Skriv in namnet på katalogen följt av / och namnet på filen som visas nedan.
Klicka på Begå på botten. Mappen och filen skapas som visas. Således skapas filer och mappar på bemästra gren som är den viktigaste integrationsgrenen och mestadels där mjukvaruversionerna kan byggas.
Utvecklarna arbetar normalt med den uppgift som tilldelats dem i en separat gren och slår samman ändringarna till huvudgrenen. Till exempel, grenar kan skapas för funktionsutveckling eller för att lösa buggar eller arbeta med förbättringar etc. Således, genom att skapa en gren isoleras arbetet utan att störa de andra grenarna.
I nästa steg kan vi titta på hur filialerna kan skapas och dra förfrågningar definieras för att granska och slå samman koden i huvudgrenen.
Flytta en fil
Så här flyttar du en fil till en annan mapp. Till exempel, för att flytta filreglerna.txt till en doc-mapp. Klicka på filen.
Klicka på ikonen för att redigera filen.
Lägg till sökvägen doc / före filen regler.txt . Klicka på Begå förändringar.
Banan är nu uppdaterad.
Skapa en GitHub-filial
Gå till huvudsidan i arkivet och skriv för att skapa en funktion gren som visas. Klicka på Skapa filial.
Vi är nu i funktion gren. Filerna är desamma. Vi kommer nu att göra några ändringar i filerna i funktion filial och skapa en pull-begäran för att granska ändringarna och slå samman koden i bemästra gren.
Gör ändringar i filerna i funktionsgrenen.
Öppna Java-filen i Src-mappen och lägg till lite kod och gör ändringen.
Skapa en GitHub Pull-begäran
I föregående avsnitt skapade vi en gren funktion och gjorde några ändringar i en fil. Ändringarna finns inte i bemästra gren. För detta måste vi skapa en Pull-begäran genom vilken användaren föreslår att vissa ändringar ska granskas och slås samman i bemästra gren.
Att skapa Pull Request visar skillnaderna mellan källan och målgrenen och kommer att krävas för att lösa konflikter om någon.
Klicka på Jämför & dra begäran på förvarets huvudsida.
Du kan se att ändringarna i båda grenarna kan slås samman. Klicka på Skapa Pull Request.
Klicka på Begäran om sammanslagning av drag och Bekräfta för att slutföra sammanslagningen.
Ändringar slås samman med bemästra gren. Vår första Pull-begäran har slutförts.
Tilldela granskare med dragförfrågningar och kodgranskning
Github har en bra funktion att använda en CODEOWNERS-fil där vi kan välja de personer som är ansvariga för källkoden i förvaret. Förvarets ägare kan skapa den här filen och alla användare som definieras i filen begärs som standard för granskningen under dragbegäran.
För att använda den här funktionen måste du använda GitHub Pro-versionen eller göra förvaret offentligt.
I roten till förvaret skapar du den här filen i följande format och gör filen.
* @ användarnamn eller @orgname eller @teamname
* betyder främst alla filer i repo. Du kan också ange specifika tillägg som * .java eller * .js etc. De användare som definieras i filen kommer att skickas en begäran om granskning automatiskt. Med CODEOWNERS-filen definierad finns det inget behov av att uttryckligen lägga till granskare manuellt och har lite mer flexibilitet att välja vilka filer som ska granskas.
Tillbaka i funktion gren gör en liten ändring av Java-filen och skapa en Pull Request. Tilldela en granskare på höger sida på skärmen Pull Request. Klicka på Skapa Pull Request.
Du kan se på skärmen ovan att granskarna kan tilldelas manuellt men granskarna definieras i CODEOWNERS-filen som automatiskt får en begäran om att granska kodändringarna.
Hur som helst, för nu, låt oss logga in som granskare och godkänna ändringarna. Logga in som användaren vniranjan2512 för att godkänna ändringarna.
Det finns en begäran om att godkänna / avvisa ändringarna, under Dra begäran.
Klicka på Pull Request och Lägg till din recension.
Du kan klicka på + underteckna och lägg till recensionskommentarer för kodraden Tillagd / modifierad / borttagen på skärmen som kommer upp.
Klicka på Starta en recension.
Klicka på Avsluta din recension. Godkänn som visat och Skicka granskning .
Tillbaka som den ursprungliga användaren som tog upp en pull-begäran kan du lägga till en kommentar och lösa eller stänga konversationen.
Nu kan begäran om sammanslagning slutföras.
Ändringarna slås samman i bemästra filial posta granskningen och slå samman begäran.
Så, för att sammanfatta i detta skede, har vi sett att utvecklare arbetar på funktion gren och höj sedan en Pull-begäran för att slå samman ändringarna till bemästra gren. Ovanstående var ett scenario där konflikter inte fanns. I nästa avsnitt kommer vi att se sätten att lösa konflikter manuellt om filerna ändras i flera grenar.
Lösa konflikter
Det är möjligt att samma filer i flera grenar skulle ändras. I det här fallet skulle det uppstå konflikter och måste lösas genom den Pull-begäran som tas upp.
Till exempel, göra ändringar i Java-filen i båda bemästra och funktion grenar och höja en dragförfrågan.
Meddelandet om pullbegäran som visas är att ändringarna inte kan slås samman automatiskt. Därför måste konflikterna lösas. Fortsätt för att skapa en Pull-begäran.
När Pull Request har tagits upp måste konflikterna lösas genom att klicka på Lösa konflikter knapp.
Ta bort markeringarna som i huvudsak löser konflikter manuellt och klicka på Markera som löst och Begå sammanfogning.
Den slutliga bilden av filen efter markering tas bort.
Begäran om sammanslagning kan fyllas i. De bemästra och funktion grenar kommer nu att vara identiska.
Du kan fortfarande se på skärmen ovan att granskningen begärs men inte är obligatorisk. I nästa avsnitt kommer vi att se om reglerna för filialskydd där förvarets ägare obligatoriskt kan begära en granskning och även skydda bemästra gren från att begå sig direkt till det men bara genom en begäran om att dra.
Regler för filialskydd
I de föregående avsnitten såg vi om Github Pull-förfrågningar och begärde också recensioner som inte var obligatoriska eller valfria. I typiska kod för projektscenarier är recensionerna ett måste och en del av utvecklingsprocessen.
Låt oss se hur vi kan genomföra detta.
På github.com kan den här funktionen endast ställas in för offentliga arkiv eller med Github pro-versionen. Gå till Förvarets huvudsida inställningar och klicka på Grenar kategori till vänster.
Klicka på Lägg till regel under Regler för filialskydd. Regeln lade till förfrågningar om obligatorisk granskning av pullbegäran från kodägare innan de slogs samman för bemästra gren.
Detta kommer också att säkerställa att mästare gren är skyddad och inga direkta åtaganden kan göras på denna gren och kan endast göras genom Pull-begärandena efter en grundlig granskning. Den här inställningen ställs in av förvarets ägare.
En fantastisk funktion verkligen !!!
Klicka på Skapa en gång klar. För att testa detta scenario gör du en ändring av en fil i funktion filial och skapa en pull-begäran.
Följande skärm visar att en kod obligatoriskt krävs av kodägarna.
Lägg upp granskningen från kodägare, pull-begäran kan slås samman.
Om du gör ändringar i någon av filerna, på grund av de skyddade grenarnas regler som skapats, kommer du inte att kunna engagera dig direkt till huvudgrenen utan endast genom en Pull Request efter att du har skapat en gren som visas Nedan.
Överföra ett arkiv till ett annat användarkonto
Normalt har ett personligt användarförvar en enda ägare och alla andra är medarbetare. Så i en mening att du inte kan ha flera ägare i ett användarkontoförvar. Men äganderätten kan överföras till ett annat användarkonto. När du är klar blir den ursprungliga förvarets ägare automatiskt medarbetare i det nya användarkontoförvaret.
Den nya ägaren kan sedan börja administrera artefakterna, utgåvorna, dra förfrågningar, projekt, utgåvor och inställningar.
Normalt när kommandon som 'git clone' eller 'git push' utförs i det lokala förvaret kommer kommandona att omdirigeras till det nya förvaret. Men när du kör kommandot 'git remote -v' kommer det fortfarande att visa den ursprungliga förvarets URL. För att undvika förvirring för att byta till den nya fjärranslutna URL: n överför förvaret med kommandot ”git remote set-url”.
För att överföra ett förråd, gå till fliken Inställningar i förvaret och under Alternativ? Danger Zone klicka på Överföra
Ange förvarets namn och det nya användarkontot som äganderätten måste överföras till.
Klicka på Jag förstår, överför det här förvaret
Du bör se ett meddelande om att förvaret överförs till den nya ägaren.
Ett e-postmeddelande skickas till den ursprungliga förvarets ägare för att godkänna överföringen. När överföringen har godkänts kommer förvaret att överföras till den nya ägaren och den ursprungliga förvarets ägare läggs till som en medarbetare.
Ställ nu in den nya förvarets URL i maskinen där den gamla förvaret klonades. Följande kommandon måste ställas in i alla maskiner där det gamla förvaret klonades.
Alla dragförfrågningar, problem, wiki överförs. Utgivningsuppdrag förblir intakta.
Några användbara Git-kommandon
Det finns några av de grundläggande Git-kommandona som ska konfigureras initialt på din lokala dator när Git-klienten har installerats på din Linux- eller Windows-maskin. Utvecklare arbetar lokalt, utan anslutning till förvaret på GitHub, med den fullständiga kopian av källkoden som är tillgänglig på GitHub och synkroniseras med den.
Först och främst, ställ in ditt användarnamn och e-postadress för att säkerställa att alla åtaganden du använder denna information.
git config –global user.name “UserName”
git config –global user.email “myemail@myemail.com”
När du behöver lägga till ett meddelande under kommit kan du också konfigurera den redigerare som behövs för samma.
bästa videokonverteringsprogramvara för mac
git config –global core.editor anteckningar
Hämta en lista över alla inställda konfigurationsvärden.
git config –list
Ibland har organisationer proxyservrar för anslutning till internet. I så fall måste du ange en proxyserver och ett portnummer för att komma åt alla arkiv på GitHub.
git config –global http.proxyhttp: // Användarnamn: Lösenord @ proxyserver: port
Klona eller skapa en lokal kopia av förvaret. Hämta klon-URL: en för förvaret i GitHub och kör git-kommandot.
Slutsats
I denna handledning har vi sett hur en utvecklare kan börja arbeta med GitHub, direkt från att skapa ett GitHub-arkiv, filial, pull-begäran, skydda en gren och några grundläggande Git-kommandon.
I vår kommande handledning kommer vi att se de andra funktionerna i GitHub främst om hur man skapar organisationer, team, gafflar ett förvar, skapar problem, milstolpar och associerar med pull-förfrågningar, wiki och deras användning och några andra avancerade Git-kommandon som kommer att vara användbara till utvecklarna.
Rekommenderad läsning
- Java Reflection Tutorial med exempel
- Git vs GitHub: Utforska skillnaderna med exempel
- Python DateTime-handledning med exempel
- Selenintegration med GitHub med Eclipse
- En snabb SoapUI-guide för att lagra begäran och svarsdata i en fil - SoapUI-handledning nr 15
- Bugzilla Tutorial: Defect Management Tool Praktisk handledning
- 20+ MongoDB-handledning för nybörjare: Gratis MongoDB-kurs
- MongoDB Sharding Tutorial med exempel