github tutorial developers how use github
Denne GitHub-opplæringen forklarer hva som er GitHub og hvordan du lager et arkiv, forgrening og trekkforespørsel. Det inkluderer regler for filialbeskyttelse og konfliktløsning:
Hva er GitHub?
GitHub er en skytjeneste som hjelper utviklere å lagre og administrere kildekoden, samt spore og kontrollere alle endringene i kildekoden.
Enkelt sagt er GitHub ment for utviklere der de kan administrere prosjektet, være vert for kildekoden og gjennomgå dem også. Vi vil utforske alle disse i denne serien.
Liste over opplæringsprogrammer i denne GitHub-serien:
Opplæring # 1: GitHub-veiledning for utviklere | Hvordan bruke GitHub (Denne veiledningen)
Opplæring # 2: GitHub-prosjekter, team, gaffel og wiki for dokumentasjon av prosjekter
Opplæring # 3: Avanserte Git-kommandoer og GitHub-integrasjonsveiledning
Opplæring # 4: GitHub REST API Tutorial - REST API Support i GitHub
Opplæring # 5: GitHub Desktop Tutorial - Samarbeid med GitHub fra skrivebordet
Opplæring # 6: TortoiseGit Tutorial - Hvordan bruke TortoiseGit for versjonskontroll
Hva du vil lære:
Hva er Git?
Git er et kontrollsystem for åpen kildekode der hele kildekoden er tilgjengelig på utviklerens maskin. Git er også et klient- og distribuert versjonskontrollsystem (DVCS) hvor du kan gjøre forgrening og sammenslåing.
Komme i gang med GitHub
For å komme i gang med GitHub, vil vi utføre følgende trinn.
- Lag et lager for å organisere prosjekter.
- Lag en gren
- Gjør endringer i filen og forplikt deg.
- Opprett en Pull Request for å slå sammen innholdet.
- Beskytt gren
I den andre delen av serien vil vi også se på de andre funksjonene i GitHub som å lage organisasjon, lag, problemer, milepæler, gafler, utgivelser og wikier.
Opprett et GitHub-arkiv
Et GitHub Repository inneholder prosjektets gjenstander som kildekode, dokumenter, bilder osv. Vi vil lage og bruke et demo-arkiv for å utføre alle trinnene ovenfor.
Logg inn på Github.com og Opprett et nytt arkiv . Klikk på Ny knapp.
Legg til repo-detaljene nedenfor som vist, og klikk på Opprett depot . Angi tilgang til enten privat eller offentlig. Det er bedre å sette det til publikum, ettersom få funksjoner er avhengig av denne tilgangen.
Merk: Brukeren som oppretter depotet er eieren av GitHub Repository.
Datalageret er opprettet med en README-fil.
Legge til samarbeidspartnere i GitHub Repository
Vi ønsker at teamet skal jobbe med dette depotet. For dette må vi invitere samarbeidspartnerne til å jobbe med depotet. For å legge til samarbeidspartnere, gå til hovedsiden til arkivet og klikk på Innstillinger ikon.
Klikk på Samarbeidspartnere i venstre rute og legg til samarbeidspartnerne som har Github-konto. En invitasjon vil bli sendt, og samarbeidspartnerne må akseptere invitasjonen.
Samarbeidspartnere legges til som vist nedenfor. Senere, i denne opplæringen, vil vi se hvordan samarbeidspartnerne vil bli lagt til som korrekturleser for pull-forespørselen opprettet for å slå sammen koden.
Utføre en grunnleggende C unnlate
Åpne README-filen og utfør en grunnleggende kommisjon. Klikk på Rediger ikon for å begynne å endre filen.
Endre filen, legg til en kommentar og klikk på Begå .
Filen er forpliktet (endringer lagret) til Github Repository.
Få operasjoner for å opprette mapper og filer i depotet vil bli sett.
Slik oppretter du mappen og en fil i: Klikk på Opprett ny fil -knappen på arkivnivå. Skriv inn navnet på katalogen etterfulgt av / og navnet på filen som vist nedenfor.
Klikk på Begå på bunnen. Mappen og filen opprettes som vist. Dermed opprettes filene og mappene på herre gren som er hovedintegrasjonsgrenen og mest der programvareutgivelsene kan bygges.
Utviklerne jobber normalt med oppgaven som er tildelt dem på en egen gren og slår sammen endringene til hovedgrenen. For eksempel, grener kan opprettes for funksjonsutvikling eller for å løse feil eller arbeide med forbedringer osv. Dermed, ved å lage en gren, blir arbeidet isolert uten å forstyrre de andre grenene.
I neste trinn kan vi se på hvordan grenene kan opprettes og trekke forespørsler defineres for å gjennomgå og slå sammen koden i hovedgrenen.
Flytte en fil
Gjør følgende for å flytte en fil til en annen mappe. For eksempel, for å flytte filregler.txt til en doc-mappe. Klikk på filen.
Klikk på ikonet for å redigere filen.
Legg til stien doc / før filen regler.txt . Klikk på Forplikte endringer.
Stien er nå oppdatert.
Opprette en GitHub-gren
Gå til hovedsiden til arkivet og skriv for å opprette en trekk gren som vist. Klikk på Lag gren.
Vi er nå i trekk gren. Filene er de samme. Vi vil nå gjøre noen endringer i filene i trekk filial og opprett en pull-forespørsel for å se gjennom endringene og slå sammen koden i herre gren.
Gjør endringer i filene i funksjonsgrenen.
Åpne Java-filen i Src-mappen, og legg til litt kode og begå endringen.
Opprett en GitHub Pull-forespørsel
I forrige avsnitt opprettet vi en gren trekk og gjorde noen endringer i en fil. Endringene er ikke i herre gren. For dette må vi lage en Pull-forespørsel som brukeren foreslår at visse endringer skal gjennomgås og slås sammen i herre gren.
Opprette Pull Request vil vise forskjellene mellom kilden og målgrenen og vil være nødvendig for å løse konflikter hvis noen.
Klikk på Sammenlign og trekk forespørsel på hovedsiden til depotet.
Du kan se at endringene på tvers av begge grenene kan slås sammen. Klikk på Opprett Pull Request.
Klikk på Merge Pull Request og Bekrefte for å fullføre sammenslåingen.
Endringer slås sammen i herre gren. Vår første Pull-forespørsel er fullført.
Tilordne korrekturlesere med trekkforespørsler og kodegjennomgang
Github har en god funksjon ved å bruke en CODEOWNERS-fil der vi kan velge personer som er ansvarlige for kildekoden i depotet. Depoteiere kan opprette denne filen, og alle brukere som er definert i filen, blir forespurt som standard for gjennomgang under opprettelse av trekkforespørsel.
For å bruke denne funksjonen, må du bruke GitHub Pro-versjonen eller gjøre depotet offentlig.
I roten til arkivet lager du denne filen i følgende format og forplikter filen.
* @ brukernavn eller @orgname eller @teamname
* betyr primært alle filene i repoen. Du kan også spesifisere spesifikke utvidelser som * .java eller * .js etc. Brukerne som er definert i filen vil automatisk få tilsendt en forespørsel om gjennomgang. Med CODEOWNERS-filen definert, er det ikke nødvendig å eksplisitt legge til korrekturlesere manuelt, og har litt mer fleksibilitet til å velge hvilke filer som skal gjennomgås.
Tilbake i trekk gren gjør en liten endring i Java-filen og opprett en Pull Request. I skjermbildet Pull Request tildeler du en korrekturleser på høyre side. Klikk på Opprett Pull Request.
Du kan se i skjermbildet ovenfor at korrekturleserne kan tildeles manuelt, men korrekturleserne er definert i CODEOWNERS-filen som automatisk får en forespørsel om å gjennomgå kodendringene.
Uansett, for nå, la oss Logg Inn som anmelder og godkjenne endringene. Logg på som brukeren vniranjan2512 for å godkjenne endringene.
Det er en forespørsel om å godkjenne / avvise endringene, under Trekk forespørsel.
Klikk på Pull Request og Legg til din anmeldelse.
Du kan klikke på + signere og legge til anmeldelseskommentarer for kodelinjen Lagt til / modifisert / slettet, på skjermen som kommer opp.
Klikk på Start en anmeldelse.
Klikk på Fullfør anmeldelsen. Godkjenn som vist og Send anmeldelse .
Tilbake som den opprinnelige brukeren som reiste en pull-forespørsel, kan du legge til en kommentar og løse eller lukke samtalen.
Merge pull-forespørselen kan nå fullføres.
Endringene er vellykket slått sammen i herre filial innlegg gjennomgang og slå sammen trekkforespørselen.
Så, for å oppsummere på dette stadiet, har vi sett at utviklere jobber med trekk filial og løft deretter en Pull Request for å slå sammen endringene til herre gren. Ovennevnte var et scenario der konflikter ikke var der. I neste avsnitt vil vi se måtene å løse konflikter manuelt hvis filene endres i flere grener.
Løse konflikter
Det er mulig at de samme filene i flere grener vil bli endret. I dette tilfellet vil det være konflikter og må løses gjennom Pull Request reist.
For eksempel, gjøre endringer i Java-filen i begge herre og trekk grener og heve en trekkforespørsel.
Meldingen om pullforespørsel som vises, er at endringene ikke kan slås sammen automatisk. Derfor må konfliktene løses. Fortsett med å opprette en Pull Request.
Når Pull Request er reist, må konfliktene løses ved å klikke på Løs konflikter knapp.
Fjern merkingene som i hovedsak løser konflikter manuelt, og klikk på Merk som løst og Forplikt fusjon.
Den endelige visningen av filen etter merking er fjernet.
Merge pull request kan fullføres. De herre og trekk grenene vil nå være identiske.
Du kan fremdeles se på skjermbildet ovenfor at gjennomgang er bedt om, men ikke mandat. I neste avsnitt vil vi se om regler for filialbeskyttelse der eieren av depotet kan obligatorisk be om en gjennomgang og også beskytte herre gren fra å forplikte seg direkte til det, men bare gjennom en trekkforespørsel.
Regler for filialbeskyttelse
I de forrige avsnittene så vi om Github Pull Requests og også om å be om anmeldelser som ikke var obligatoriske eller valgfrie. I typisk kode for prosjektscenarier er vurderingene et must og en del av utviklingsprosessen.
La oss se hvordan vi kan håndheve dette.
I github.com kan denne funksjonen bare settes for offentlige arkiver eller ved bruk av Github pro-versjonen. Gå til hovedsiden til arkivet Innstillinger og klikk på Grener kategori til venstre.
Klikk på Legg til regel under Regler for grenbeskyttelse. Regelen la til forespørsler om obligatorisk anmeldelse av trekkforespørsler fra kodeeierne før de slås sammen for herre gren.
Dette vil også sikre at mestergren er beskyttet og ingen direkte forpliktelser kan gjøres på denne grenen, og kan bare begås gjennom Pull Requests etter en grundig gjennomgang. Denne innstillingen angis av eieren av depotet.
En flott funksjon faktisk!
Klikk på Skape en gang ferdig. For å teste dette scenariet, gjør en endring i en fil i trekk gren og opprett en trekkforespørsel.
Følgende skjermbilde viser at kodeeierne obligatorisk krever en gjennomgang.
Legg ut gjennomgangen fra kodeeierne, trekkforespørselen kan slås sammen.
Hvis du gjør endringer i noen av filene, på grunn av de beskyttede grenene som er opprettet, vil du ikke kunne forplikte deg direkte til hovedgrenen, men bare gjennom en Pull Request etter å ha opprettet en gren som vist. under.
Overføre et lager til en annen brukerkonto
Normalt har et personlig brukerregister én eier, og alle andre er samarbeidspartnere. Så på en måte at du ikke kan ha flere eiere i en brukerkonto. Men eierskapet kan overføres til en annen brukerkonto. Når det er gjort, blir den opprinnelige depoteeieren automatisk samarbeidspartnere i det nye brukerkontokontot.
Den nye eieren kan deretter begynne å administrere gjenstander, problemer, trekke forespørsler, prosjekter, utgivelser og innstillinger.
Normalt når kommandoer som ‘git clone’ eller ‘git push’ utføres i det lokale depotet, vil kommandoene omdirigere til det nye depotet. Men når du kjører kommandoen ‘git remote -v’, vil den fremdeles vise den opprinnelige arkiv-URL-en. For å unngå forvirring ved å bytte til den nye eksterne URL-en, legg overføringen av depotet med kommandoen ‘git remote set-url’.
For å overføre et depot, gå til Innstillinger-fanen i depotet og under Alternativer? Danger Zone klikk på Overføre
Skriv inn depotnavnet og den nye brukerkontoen som eierskapet må overføres til.
Klikk på Jeg forstår, overfør dette depotet
Du bør se en melding om at depotet overføres til den nye eieren.
En e-post vil bli sendt til den opprinnelige lagereieren for å godkjenne overføringen. Når overføringen er godkjent, vil depotet overføres til den nye eieren, og den opprinnelige depoteieren vil bli lagt til som en samarbeidspartner.
Sett nå den nye URL-en til depotet i maskinen der det gamle depotet ble klonet. Følgende kommandoer må settes i alle maskiner der det gamle depotet ble klonet.
Alle trekkforespørsler, problemer, wiki vil bli overført. Oppgavene vil være intakte.
Noen nyttige Git-kommandoer
Det er noen av de grunnleggende Git-kommandoene som skal konfigureres først på din lokale maskin når Git-klienten er installert på din Linux- eller Windows-maskin. Utviklere jobber lokalt, uten tilkobling til depotet på GitHub, med den fullstendige kopien av kildekoden som er tilgjengelig på GitHub og synkroniseres med den.
For det første må du angi brukernavn og e-postadresse for å sikre at alle forpliktelser du bruker denne informasjonen.
git config –global user.name “UserName”
git config –global user.email “myemail@myemail.com”
Når du trenger å legge til en melding under forpliktelser, kan du også konfigurere redigeringsprogrammet som trengs for det samme.
gode anime nettsteder for å se animes gratis
git config –global core.editor notisblokk
Få en liste over alle konfigurasjonsverdiene som er angitt.
git config – list
Noen ganger har organisasjoner proxy-servere for tilkobling til internett. I så fall må du spesifisere en proxy-server og portnummer for å få tilgang til alle depotene på GitHub.
git config –global http.proxyhttp: // Brukernavn: Passord @ proxyserver: port
Klon eller lag en lokal kopi av arkivet. Få klon-URL til depotet i GitHub og kjør git-kommandoen.
Konklusjon
I denne opplæringen har vi sett hvordan en utvikler kan begynne å jobbe med GitHub, rett fra å lage et GitHub Repository, Branch, Pull Request, beskytte en gren og noen grunnleggende Git-kommandoer.
I vår kommende opplæring vil vi se de andre funksjonene i GitHub hovedsakelig om hvordan du oppretter organisasjoner, team, forkaster et depot, oppretter problemer, milepæler og tilknytning til pull-forespørsler, wiki og deres bruk og få andre avanserte Git-kommandoer som vil være nyttige til utviklerne.
Anbefalt lesing
- Java Reflection Tutorial med eksempler
- Git vs GitHub: Utforsk forskjellene med eksempler
- Python DateTime Tutorial med eksempler
- Selenintegrasjon med GitHub ved hjelp av formørkelse
- En rask SoapUI-guide for lagring av forespørsels- og svardata i en fil - SoapUI-veiledning nr. 15
- Bugzilla Tutorial: Defect Management Tool Hands-on Tutorial
- 20+ MongoDB-opplæring for nybegynnere: Gratis MongoDB-kurs
- MongoDB Sharding Tutorial med eksempel