github tutorial developers how use github
Ovaj GitHub vodič objašnjava što je GitHub i kako stvoriti spremište, zahtjev za grananjem i povlačenjem. Uključuje pravila zaštite grana i rješavanje sukoba:
Što je GitHub?
GitHub je usluga u oblaku koja programerima pomaže u pohrani i upravljanju njihovim izvornim kodom, kao i praćenju i kontroli svih promjena u izvornom kodu.
Jednostavno rečeno, GitHub je namijenjen programerima u kojima mogu upravljati projektom, hostirati izvorni kod i pregledati ih. Sve ćemo to istražiti u ovoj seriji.
Popis tutorijala u ovoj GitHub seriji:
Vodič br. 1: Vodič za programere za GitHub | Kako koristiti GitHub (Ovaj vodič)
Vodič br. 2: GitHub projekti, timovi, vilice i Wiki za dokumentiranje projekata
Vodič br. 3: Napredne Git naredbe i vodič za integraciju GitHub-a
Vodič br. 4: Vodič za GitHub REST API - Podrška za REST API u GitHubu
Vodič br. 5: Vodič za radnu površinu za GitHub - Surađujte s GitHubom s radne površine
Vodič br. 6: Vodič za TortoiseGit - Kako koristiti TortoiseGit za kontrolu verzija
Što ćete naučiti:
Što je Git?
Git je sustav kontrole verzija otvorenog koda gdje je cijeli izvorni kod dostupan na stroju programera. Git je također klijentski i distribuirani sustav kontrole verzija (DVCS) u kojem možete raditi grananje i spajanje.
Početak rada s GitHubom
Da bismo započeli s GitHubom, izvršit ćemo sljedeće korake.
- Stvorite spremište za organizaciju projekata.
- Stvorite granu
- Unesite promjene u datoteku i počnite.
- Stvorite zahtjev za povlačenjem za spajanje sadržaja.
- Zaštitite granu
U drugom dijelu serije osvrnut ćemo se i na ostale značajke GitHub-a poput Stvaranja organizacije, timova, izdanja, prekretnica, vilica, izdanja i Wikija.
Stvorite GitHub spremište
GitHub Repozitorij sadrži artefakte projekta poput izvornog koda, dokumenata, slika itd. Stvorit ćemo i upotrijebiti demo repozitorij za izvođenje svih gore navedenih koraka.
Prijavite se na Github.com i Stvorite novo spremište . Klikni na Novi dugme.
Dodajte dolje detalje o repo-u kao što je prikazano i kliknite na Izradite spremište . Postavite pristup privatnom ili javnom. Bolje je postaviti ga na javni, jer malo značajki ovisi o ovom pristupu.
Napomena: Korisnik koji kreira spremište vlasnik je GitHub Spremišta.
Spremište se kreira s datotekom README.
Dodavanje suradnika u spremište GitHub
Željeli bismo da tim radi na ovom spremištu. Zbog toga ćemo morati pozvati suradnike da rade na spremištu. Da biste dodali suradnike, idite na glavnu stranicu Spremišta i kliknite na Postavke ikona.
Kliknite na Suradnici u lijevom oknu i dodajte suradnike koji imaju Github račun. Poslala bi se pozivnica i suradnici bi je trebali prihvatiti.
Suradnici se dodaju kako je prikazano u nastavku. Kasnije, u ovom uputstvu, vidjet ćemo kako će se suradnici dodati kao recenzent zahtjeva za povlačenje stvoren za spajanje koda.
Izvođenje osnovnog C pukni
Otvorite datoteku README i izvedite osnovno urezivanje. Klikni na Ikona Uredi za početak izmjene datoteke.
Izmijenite datoteku, dodajte komentar i kliknite na Počiniti .
Datoteka je predana (promjene su spremljene) u Github Repository.
Vidjet će se nekoliko operacija za stvaranje mape i datoteka unutar Spremišta.
Da biste stvorili mapu i datoteku unutar: Klikni na Stvori novu datoteku gumb na razini Spremišta. Upišite naziv direktorija nakon kojeg slijedi / i naziv datoteke kao što je prikazano u nastavku.
Kliknite na Počiniti na dnu. Mapa i datoteka kreiraju se kako je prikazano. Dakle, datoteke i mape kreiraju se na ovladati; majstorski grana koja je glavna integracijska grana i uglavnom se može graditi izdanja softvera.
Programeri obično rade na zadatku koji im je dodijeljen u zasebnoj grani i spajaju promjene u glavnoj grani. Na primjer, grane se mogu stvoriti za razvoj značajki ili rješavanje grešaka ili rad na poboljšanjima itd. Dakle, stvaranjem grane rad je izoliran bez ometanja ostalih grana.
U sljedećem koraku možemo pogledati kako se grane mogu stvoriti i definirati zahtjeve za povlačenjem za pregled i spajanje koda u glavnu granu.
Premještanje datoteke
Da biste datoteku premjestili u drugu mapu, učinite sljedeće. Na primjer, za premještanje datoteke rules.txt u mapu dok. Kliknite datoteku.
Kliknite ikonu za uređivanje datoteke.
Dodajte put doc / prije spisa pravila.txt . Kliknite na Obvežite promjene.
Put je sada ažuriran.
Stvaranje GitHub ogranka
Idite na glavnu stranicu Spremišta i upišite da biste stvorili značajka grana kako je prikazano. Kliknite na Stvori granu.
Sad smo u značajka podružnica. Datoteke su iste. Sada ćemo napraviti neke promjene u datotekama u značajka i stvorite zahtjev za povlačenje za pregled promjena i spajanje koda u ovladati; majstorski podružnica.
Izmijenite datoteke u grani značajki.
Otvorite Java datoteku u mapi Src i dodajte malo koda i izvršite promjenu.
Stvorite zahtjev za povlačenje GitHub-a
U prethodnom smo odjeljku stvorili granu značajka i napravio neke promjene u datoteci. Promjene nisu u ovladati; majstorski podružnica. Za to moramo stvoriti Zahtjev za povlačenje kojim korisnik predlaže određene promjene koje će se pregledati i spojiti u ovladati; majstorski podružnica.
Stvaranje zahtjeva za povlačenjem prikazat će razlike između izvorne i ciljne grane i bit će potrebno riješiti sukobe ako postoje.
Kliknite na Usporedite i povucite zahtjev na glavnoj stranici spremišta.
Vidite da se promjene u obje grane mogu spojiti. Kliknite na Stvori zahtjev za povlačenjem.
Kliknite na Spoji zahtjev za povlačenjem i Potvrdite za dovršetak spajanja.
Promjene su uspješno spojene u ovladati; majstorski podružnica. Naš prvi zahtjev za povlačenjem uspješno je završen.
Dodijelite recenzentima zahtjeve za povlačenje i pregled koda
Github ima dobru značajku upotrebe datoteke CODEOWNERS u kojoj u spremištu možemo odabrati ljude koji su odgovorni za izvorni kod. Vlasnici spremišta mogu stvoriti ovu datoteku i svi korisnici definirani u datoteci zadani su za pregled tijekom izrade zahtjeva za povlačenjem.
Da biste koristili ovu značajku, morate koristiti verziju GitHub Pro ili učiniti Spremište javnim.
U korijenu spremišta stvorite ovu datoteku u sljedećem formatu i datoteku uredite.
* @korisničko ime ili @orgname ili @teamname
* prvenstveno znači sve datoteke u repo-u. Također možete odrediti određena proširenja poput * .java ili * .js itd. Korisnicima definiranim u datoteci automatski će se poslati zahtjev za pregled. S definiranom datotekom CODEOWNERS, nema potrebe za ručnim dodavanjem recenzenata i ima malo više fleksibilnosti pri odabiru datoteka koje će se pregledati.
Natrag u značajka grana napravite malu promjenu u Java datoteci i stvorite zahtjev za povlačenjem. Na zaslonu Zahtjev za povlačenje dodijelite recenzenta s desne strane. Kliknite na Stvori zahtjev za povlačenjem.
Na gornjem zaslonu možete vidjeti da se recenzenti mogu dodijeliti ručno, ali recenzenti su definirani u datoteci CODEOWNERS koji će automatski dobiti zahtjev za pregled promjena koda.
Svejedno, za sada, krenimo prijaviti se kao recenzent i odobrava promjene. Prijavite se kao korisnik vniranjan2512 da biste odobrili promjene.
Postoji zahtjev za odobrenjem / odbijanjem promjena, pod Zahtjev za povlačenjem.
Kliknite Zahtjev za izvlačenje i Dodajte svoju recenziju.
Možete kliknuti na + potpišite i dodajte komentare recenzije za redak koda Dodano / Izmijenjeno / Izbrisano, na zaslonu koji se pojavi.
Kliknite na Započnite pregled.
Kliknite na Završite svoj pregled. Odobri kako je prikazano i Pošaljite recenziju .
Natrag kao izvorni korisnik koji je podnio zahtjev za povlačenjem, možete dodati komentar i razriješiti ili zatvoriti razgovor.
Zahtjev za spajanjem izvlačenja sada se može dovršiti.
Promjene su uspješno spojene u ovladati; majstorski podružnica objavljuje pregled i spajanje zahtjeva za povlačenjem.
Dakle, da rezimiramo u ovoj fazi, vidjeli smo da programeri rade na značajka , a zatim podignite zahtjev za povlačenjem za spajanje promjena u ovladati; majstorski podružnica. Gore navedeno bio je scenarij u kojem sukoba nije bilo. U sljedećem ćemo odjeljku vidjeti načine ručnog rješavanja sukoba ako se datoteke mijenjaju u više grana.
Rješavanje sukoba
Moguće je da bi se promijenile iste datoteke u više grana. U ovom bi slučaju došlo do sukoba i mora se riješiti podignutim zahtjevom za povlačenje.
Na primjer, unesite promjene u Java datoteku u obje datoteke ovladati; majstorski i značajka grane i podići zahtjev za povlačenjem.
Prikazana poruka zahtjeva za povlačenje je da se promjene ne mogu automatski spojiti. Stoga se sukobi moraju riješiti. Nastavite s izradom zahtjeva za povlačenjem.
Nakon što se podigne zahtjev za povlačenjem, sukobi će se morati riješiti klikom na Rješavajte sukobe dugme.
Uklonite oznake koje u osnovi rješavaju sukobe ručno i kliknite na Označi kao riješeno i Počini spajanje.
Konačni prikaz datoteke nakon uklanjanja oznaka.
Zahtjev za spajanjem povlačenja može se dovršiti. The ovladati; majstorski i značajka grane će sada biti identične.
Na gornjem zaslonu još uvijek možete vidjeti da je pregled zatražen, ali nije obvezan. U sljedećem ćemo odjeljku vidjeti pravila o zaštiti podružnice u kojima vlasnik spremišta obvezno može zatražiti pregled i također zaštititi ovladati; majstorski grana od predavanja izravno na nju, ali samo putem zahtjeva za povlačenjem.
Pravila zaštite podružnica
U prethodnim smo odjeljcima vidjeli Github zahtjeve za povlačenjem, kao i zahtjeve za recenzije koje nisu bile obvezne ili neobavezne. U tipičnom kodu projektnih scenarija, pregledi su nužni i dio procesa razvoja.
Pogledajmo kako to provesti.
Na github.com ova se značajka može postaviti samo za javna spremišta ili pomoću verzije Github pro. Na glavnoj stranici Spremišta idite na Postavke i kliknite na Podružnice kategorija s lijeve strane.
Kliknite na Dodaj pravilo ispod Pravila zaštite grana. Pravilo je dodalo zahtjeve za obveznim pregledima zahtjeva za povlačenje od vlasnika koda prije spajanja za ovladati; majstorski podružnica.
Ovo će također osigurati da glavna grana je zaštićen i na ovoj se grani ne mogu izvršiti izravne obveze, a mogu se izvršiti samo putem zahtjeva za povlačenje nakon temeljitog pregleda. Ovu postavku postavlja vlasnik spremišta.
Zaista sjajna karakteristika !!!
Kliknite na Stvoriti jednom učinjeno. Da biste testirali ovaj scenarij, napravite promjenu datoteke u značajka grana i stvorite zahtjev za povlačenjem.
Sljedeći zaslon pokazuje da vlasnici koda obvezno trebaju pregled.
Objavite recenziju od vlasnika koda, zahtjev za povlačenjem se može spojiti.
Kao suradnik spremišta, ako napravite promjene u bilo kojoj datoteci, zbog stvorenih pravila zaštićenih grana, nećete se moći predati izravno glavnoj grani, već samo putem zahtjeva za povlačenjem nakon stvaranja grane kako je prikazano ispod.
Prijenos spremišta na drugi korisnički račun
Obično osobno spremište korisnika ima jednog vlasnika, a svi ostali su suradnici. Dakle, u smislu da ne možete imati više vlasnika u spremištu korisničkih računa. Ali vlasništvo se može prenijeti na drugi korisnički račun. Kada završi, izvorni vlasnik spremišta automatski postaje suradnik u novom spremištu korisničkog računa.
Novi vlasnik tada može početi upravljati artefaktima, problemima, zahtjevima za povlačenjem, projektima, izdanjima i postavkama.
Obično kada se naredbe poput 'git clone' ili 'git push' izvode u lokalnom spremištu, naredbe će preusmjeriti na novo spremište. Ali kada pokrenete naredbu 'git remote -v', ona će i dalje prikazivati izvorni URL spremišta. Da biste izbjegli zabunu, prelazak na novi udaljeni URL objavite prijenos spremišta pomoću naredbe 'git remote set-url'.
Da biste prenijeli spremište, idite na karticu Postavke spremišta i pod Opcije? Zona opasnosti kliknite na Prijenos
Unesite naziv spremišta i novi korisnički račun na kojeg se mora prenijeti vlasništvo.
Kliknite na Razumijem, prenesite ovo spremište
Trebali biste vidjeti poruku da se spremište prenosi na novog vlasnika.
Izvornom vlasniku spremišta poslat će se pošta da odobri prijenos. Nakon odobrenja prijenosa spremište će se prenijeti na novog vlasnika, a izvorni vlasnik spremišta bit će dodan kao suradnik.
Sada postavite novi URL spremišta u stroj gdje je klonirano staro spremište. Sljedeće naredbe moraju se postaviti na svim strojevima na kojima je klonirano staro spremište.
Svi zahtjevi za povlačenjem, problemi i wiki bit će preneseni. Zadaci izdavanja ostat će netaknuti.
Neke korisne Git naredbe
Postoje neke od osnovnih Git naredbi koje se u početku trebaju konfigurirati na vašem lokalnom računalu nakon što se Git klijent instalira na vaš Linux ili Windows stroj. Programeri rade lokalno, bez veze s spremištem na GitHubu, na punoj kopiji izvornog koda dostupnog na GitHubu i sinkroniziraju se s njim.
Prvo, postavite svoje korisničko ime i adresu e-pošte kako biste osigurali da svi obvezi koje radite koriste ove podatke.
git config –global user.name “UserName”
git config –global user.email “myemail@myemail.com”
Kada trebate dodati poruku tijekom urezivanja, također možete konfigurirati uređivač potreban za iste.
sql intervju za programere pitanja i odgovori pdf
git config –global core.editor notepad
Nabavite popis svih postavljenih vrijednosti konfiguracije.
git config –list
Ponekad organizacije imaju proxy poslužitelje za povezivanje s internetom. U tom ćete slučaju trebati odrediti proxy poslužitelj i broj porta da biste pristupili svim spremištima na GitHubu.
git config –global http.proxyhttp: // Korisničko ime: Lozinka @ proxyserver: port
Klonirajte ili napravite lokalnu kopiju Spremišta. Nabavite URL klona spremišta u GitHubu i pokrenite git naredbu.
Zaključak
U ovom uputstvu vidjeli smo kako programer može početi raditi na GitHubu, izravno iz Stvaranja GitHub spremišta, grane, zahtjeva za povlačenjem, zaštite grane i nekih osnovnih Git naredbi.
U našem nadolazećem uputstvu vidjet ćemo i ostale značajke GitHub-a uglavnom o tome kako stvoriti organizacije, timove, rastaviti spremište, stvoriti probleme, prekretnice i povezivati se sa zahtjevima za povlačenjem, wikijima i njihovom upotrebom te nekoliko drugih naprednih Git naredbi koje će biti korisne programerima.
Preporučena literatura
- Java Vodič za refleksiju s primjerima
- Git vs GitHub: Istražite razlike na primjerima
- Python DateTime Vodič s primjerima
- Integracija selena s GitHubom pomoću Eclipsea
- Kratki vodič za SoapUI za pohranu podataka o zahtjevima i odgovorima u datoteku - Vodič za SoapUI # 15
- Vodič za Bugzilla: Praktični vodič za alat za upravljanje nedostacima
- 20+ MongoDB lekcija za početnike: besplatni tečaj MongoDB
- MongoDB Vodič za sjenčanje s primjerom