Pa, ovaj će, mislim, biti prilično kratak vodič i nadam se didaktičan;). Učinit ću vam dostupnim malo spremište na mom github-u, tako da možete poslati svoj PR i istovremeno, tako da možete vježbati kako napraviti sve korake koje ću ostaviti u nastavku. Evo veze za testni PR:
https://github.com/CodeLabora/TuPrimerPR
Pa, nabrojimo brzo korake potrebne za slanje PR-a:
- Viljuška
- klon
- Daljinski
- Grana
- promjene
- dodati
- počiniti
- Gurati
- PR
Stavljam ih na engleski jezik kako bi pronašli svoje opcije na naredbenom retku git-a.
Viljuška
Vilica je vaša vlastita verzija spremišta Github. To vam omogućuje da klonirate rad drugog projekta i imate ga na svom računu tako da možete mijenjati stvari bez brige da ćete izgubiti promjene. Za izradu vilice potrebno je samo otići na stranicu i kliknuti gumb Fork koji se nalazi u gornjem desnom dijelu.
Kad završi račvanje, vidjet ćete da se spremište pojavljuje na vašem računu.
klon
Sad kad imamo spremište, klonirat ćemo ga našem timu. (Pretpostavljam da me slijede ljudi koji koriste Linux, ali za korisnike drugih sustava postoje i verzije gita koje možete preuzeti na njihovoj službenoj stranici.
A s našim terminalom radimo sljedeće.
Uz ovo ćemo dobiti novu mapu pod nazivom TuPrimerPR u kojoj će biti naš Github projekt. Ulazimo u mapu s naredbom «cd TuPrimerPR» i vidjet ćemo da se unutra nalaze datoteke koje su u našoj vilici.
(Imajte na umu da broj datoteka može varirati ovisno o tome što pronađu u mom spremištu kada se račvaju)
Daljinski
Ovo je neobavezan korak, ali onaj koji izbjegava brojne probleme u kontinuiranom radu na projektu. Fork prema zadanim postavkama stvara točnu kopiju spremišta, ali u točnom trenutku stvaranja. To znači da će, ako projekt nastavi napredovati, vaše spremište zaostajati s prolaskom dana ili sati. "Git remote" omogućuje nam da odredimo drugu točku preuzimanja (izvorni projekt) i tako budemo u mogućnosti ažurirati naš projekt svaki put kad vidimo da se nadređeni projekt ažurira.
Da biste pronašli svoj nadređeni projekt, samo trebate koristiti vezu koja se nalazi ispod naziva vašeg spremišta. (Provjerite drugu sliku odjeljka Vilica). U nastavku ćemo dodati ove podatke:
Ovo je izvorni projekt (nazvat ćemo ga uzvodno držati korak s mnogim projektima).
Kao što vidite, dodao sam daljinski upravljač s »git remote add »
Ovim ćemo moći ažurirati projekt kada je to potrebno, ali ga sada nećemo koristiti jer to nije potrebno. (Objasnit ću to kasnije ili u nekom drugom postu, ovisno o potrebi)
Grana
Grane (ili grane) omogućuju vam stvaranje odjeljaka koda s kojima možete raditi u izoliranom okruženju. To znači da ono što radite u grani ne utječe nužno na izvorni kod dok se ne koristi »git merge«. Također je dodatna funkcionalnost koju vam Github omogućuje, svaki put kada stvorite granu, Github automatski generira izvor zahtjeva za povlačenjem kada je to potrebno.
Sad kad smo u našoj posebnoj grani, možemo raditi na svom doprinosu.
promjene
Dodat ću nekoliko datoteka kako biste mogli vidjeti kako se to radi.
"Dodir" nam omogućuje stvaranje prazne datoteke (ako ona ne postoji). s ovim možemo prijeći na naš sljedeći korak.
dodati
»Git add» omogućuje nam dodavanje datoteka u naše urezivanje (objasnit ću kasnije). Da biste vidjeli koje datoteke možete dodati možete upotrijebiti naredbu »git status»
Ovim imamo sve spremno za našu obvezu
počiniti
Obveze su oznake (ili prekretnice) u vremenu. oni definiraju stanje za sve datoteke u projektu i akumuliraju promjene potrebne da bi se došlo od početka projekta do trenutnog stanja. Zvuči pomalo složeno, ali prilično je jednostavno, samo upamtite da su to stepenice vašeg projekta. Napišemo »git commit» i dobit ćemo prozor za pisanje naše poruke predavanja.
A kada završimo i spremimo tekst, vidjet ćemo nešto poput:
Gdje je prikazan sažetak onoga što čini predavanje.
Gurati
Push-om prenosimo na svoj Github račun sve obveze koje imamo na računalu, a koje nisu u našem spremištu na Internetu. To će omogućiti Githubu da automatski generira novi PR.
Primijetite da koristimo ime naše podružnice i da nas traži korisničko ime i lozinku. Na kraju nam pokazuje da je grana myImprovement stvorena unutar našeg Github računa. Pogledajmo što smo postigli u pregledniku. 😉
PR
Kao što vidite, stvoren je novi redak koji kaže "Usporedi i povuci zahtjev". Ova Github funkcionalnost omogućuje nam stvaranje PR-a na jednostavan način, kliknut ćemo da vidimo što će se dogoditi.
Github je prilično pametan. Kao što vidite, dijelovi predavanja dodaju se obrascu za podnošenje. Potrebno je samo kliknuti gumb i otvoriti 🙂 Jednostavno.
dodatni
To je iza kulisa projekata, pojavljuje se PR i upravitelj odlučuje hoće li prihvatiti ili ne ili će napisati još poruka. U mom slučaju prihvatit ću to odmah.
Jednom kada se spajanje završi, moći će vidjeti zapisnik urezivanja projekta i vidjeti svoje ime u njemu.
Ali sada imamo problem. Taj se polog ne pojavljuje u Nuestro spremište, samo u projektu. Sjećate li se našeg udaljenog prolaza? Sad je kad se isplati 🙂
Vraćamo se glavnoj grani i radimo sljedeće:
Ovim smo našem timu prenijeli sve podatke izvornog projekta. Kao što vidite, tamo se pojavljuje naš zapis. Sad ćemo spremiti sav taj rad u naše Github spremište kako bismo mogli izbrisati granu koja ima doprinos koji su oni već dodali u projekt.
Sad kad imamo ažurirano spremište Github, izbrisat ćemo našu granu, ali prvo se pobrinimo da je unutar naše glavne grane (master)
Kao što vidite, imao sam malu pogrešku, to je bilo zato što sam bio u svojoj podružnici myImprovement kada sam želio izbrisati. To se popravlja vraćanjem u glavnu granu.
Zaključak
Gotovo 🙂 jednostavno. Sad kad ste savladali mračne tajne Githuba za slanje PR-a, radujem se što ću vidjeti vaše doprinose na raznim projektima. A ako želite, svoj prvi PR možete ostaviti u mom spremištu 😉 za pamćenje.
Nisam dodirnuo tisuću i jednu korist Gita (OKO, a ne Github) i kao što biste očekivali od programera koji su povezani sa zajednicom jezgra, Git je izuzetno moćan alat sa stotinama značajki.
Da bih stekao bolju predodžbu o tome što radi i svu snagu Gita, toplo preporučujem ovo knjiga. Siguran sam da će vam puno pomoći da poboljšate rukovanje gitom.
Pozdrav i nadam se da će vam pomoći 😉
Izvrsna lekcija, nadam se da možete nastaviti zalaziti u Git. Hvala vam!
Čisto! Dodati ću još sadržaja čim budem mogao o ovome i mnogo više.
Izvrstan
Kako vam je dobro poslužilo 😉 Pozdrav
Čim uspijem vježbati, hvala vam puno, ovaj je vodič ono što sam dugo tražio, ali ga nisam mogao pronaći!
Vrlo dobro objašnjeno, iz osnova, hvala. Poboljšao bih captuas kad budeš imao vremena.