Paprasta pamoka jūsų pirmajam PR (Pull Request)

Na, manau, kad ši bus gana trumpa pamoka ir, tikiuosi, didaktinė;). Aš ketinu padaryti jums prieinamą nedidelę saugyklą savo „github“, kad galėtumėte siųsti savo PR ir tuo pačiu metu, kad galėtumėte praktiškai atlikti visus veiksmus, kuriuos paliksiu toliau. Čia yra nuoroda į bandomojo PR atlikimą:

https://github.com/CodeLabora/TuPrimerPR

Na, greitai išvardinkime veiksmus, būtinus norint išsiųsti PR:

  1. Šakės
  2. Klonas
  3. nuotolinis
  4. Filialas
  5. pokyčiai
  6. papildyti
  7. įsipareigoti
  8. Stumti
  9. PR

Aš dedu juos angliškai, kad jie rastų atitinkamas parinktis „git“ komandinėje eilutėje.

Šakės

Šakutė yra jūsų paties „Github“ saugyklos versija. Tai leidžia klonuoti kito projekto darbą ir turėti jį savo paskyroje, kad galėtumėte pakeisti dalykus nesijaudindami, jog neprarasite pakeitimų. Norint pagaminti šakę, reikia tik pereiti į puslapį ir paspausti mygtuką „Šakutė“, esantį viršutinėje dešinėje dalyje.

Savo. Christopheris Diazas Riverosas

Kai šakutė bus padaryta, pamatysite, kad saugykla pasirodo jūsų paskyroje.

Savo. Christopheris Diazas Riverosas

Klonas

Dabar, kai turime saugyklą, ją klonuosime savo komandoje. (Manau, kad žmonės, kurie naudojasi „Linux“, seka mane, tačiau kitų sistemų vartotojams taip pat yra „git“ versijų, kurias galite atsisiųsti iš jų oficialaus puslapio.

Savo. Christopheris Diazas Riverosas

Ir su savo terminalu mes darome šiuos veiksmus.

Savo. Christopheris Diazas Riverosas

Tai turėsime naują aplanką „TuPrimerPR“, kuriame bus mūsų „Github“ projektas. Įvedame aplanką su komanda «cd TuPrimerPR» ir pamatysime, kad viduje yra failai, esantys mūsų šakutėje.

Savo. Christopheris Diazas Riverosas

(Atminkite, kad failų skaičius gali skirtis priklausomai nuo to, ką jie randa mano saugykloje, kai jie išsišakoja)

nuotolinis

Tai yra neprivalomas žingsnis, tačiau išvengiama daugybės problemų dirbant nuolat su projektu. Pagal numatytuosius nustatymus šakutė sukuria tikslią saugyklos kopiją, bet tiksliai sukūrimo momentu. Tai reiškia, kad jei projektas ir toliau žengs į priekį, jūsų saugykla atsiliks praėjus kelioms dienoms ar valandoms. „Git remote“ leidžia mums nurodyti kitą atsisiuntimo tašką (pradinį projektą) ir taip atnaujinti savo projektą kiekvieną kartą, kai matome, kad pagrindinis projektas yra atnaujinamas.

Norėdami rasti tėvų projektą, tiesiog naudokite nuorodą, esančią tiesiai po jūsų saugyklos pavadinimu. (Patikrinkite antrą šakės skyriaus vaizdą). Šią informaciją pridėsime toliau:

Savo. Christopheris Diazas Riverosas

Tai yra originalus projektas (mes jį pavadinsime prieš srovę neatsilikti nuo daugelio projektų).

Savo. Christopheris Diazas Riverosas

Kaip matote, aš pridėjau nuotolinio valdymo pultą su »git remote add »

Tokiu atveju galėsime atnaujinti projektą, kai reikės, tačiau dabar jo nenaudosime, nes tai nėra būtina. (Aš tai paaiškinsiu vėliau arba kitame įraše, atsižvelgiant į poreikį)

Filialas

Šakos (arba šakos) leidžia jums sukurti kodo sekcijas, kurias galite dirbti izoliuotoje aplinkoje. Tai reiškia, kad tai, ką darote filiale, nebūtinai turi įtakos pradiniam kodui, kol nebus naudojamas „git sulieti“. Tai taip pat papildoma funkcija, kurią „Github“ leidžia jums naudoti kiekvieną kartą, kai sukuriate filialą, kai reikia, „Github“ automatiškai sugeneruoja „Pull Request“ šaltinį.

Savo. Christopheris Diazas Riverosas

Dabar, kai esame savo specialioje šakoje, galime dirbti savo indėlį.

pokyčiai

Pridedu porą failų, kad galėtumėte pamatyti, kaip tai daroma.

Savo. Christopheris Diazas Riverosas

„Palietimas“ leidžia mums sukurti tuščią failą (jei jo nėra). tai galime pereiti prie kito savo žingsnio.

papildyti

»Git add» leidžia mums pridėti failus prie mūsų įsipareigojimų (paaiškinsiu vėliau). Norėdami pamatyti, kokius failus galite pridėti, galite naudoti komandą »git status»

Savo. Christopheris Diazas Riverosas

Tai padarę mes viską paruošėme savo įsipareigojimams

įsipareigoti

Įsipareigojimai yra laiko ženklai (arba etapai). jie apibrėžia visų projekto failų būseną ir kaupia pakeitimus, reikalingus norint patekti nuo projekto pradžios iki dabartinės būsenos. Tai skamba šiek tiek kompleksiškai, bet yra gana paprasta, tiesiog nepamirškite, kad jie yra jūsų projekto laiptai. Mes rašome »git įsipareigoti» ir gausime langą, kuriame parašysime savo įsipareigojimo pranešimą.

Savo. Christopheris Diazas Riverosas

Baigdami ir išsaugodami tekstą, pamatysime kažką panašaus:

Savo. Christopheris Diazas Riverosas

Kur rodoma įsipareigojimo santrauka.

Stumti

Stumdami mes į savo „Github“ paskyrą įkeliame visus įsipareigojimus, kuriuos turime kompiuteryje ir kurių nėra mūsų saugykloje internete. Tai leis „Github“ automatiškai sugeneruoti naują PR.

Savo. Christopheris Diazas Riverosas

Atkreipkite dėmesį, kad mes naudojame savo filialo pavadinimą ir kad jis prašo mūsų vartotojo vardo ir slaptažodžio. Pabaigoje tai rodo, kad „myImprove“ filialas buvo sukurtas mūsų „Github“ paskyroje. Pažiūrėkime, ką pasiekėme naršyklėje. 😉

PR

Savo. Christopheris Diazas Riverosas

Kaip matote, sukurta nauja eilutė, kurioje sakoma „Palyginti ir traukti užklausą“. Ši „Github“ funkcija leidžia mums sukurti PR paprastu būdu, mes spustelėsime, kas atsitiks.

Savo. Christopheris Diazas Riverosas

Githubas yra gana protingas. Kaip matote, įsipareigojimo dalys pridedamos prie pateikimo formos. Tik reikia spustelėti mygtuką ir viskas. 🙂 Paprasta.

papildomai

Tai yra užkulisiuose, atsiranda PR, o vadovas nusprendžia, ar priimti, ar ne, ar parašyti daugiau žinučių. Mano atveju aš tai sutiksiu iškart.

Savo. Christopheris Diazas Riverosas

Kai sujungimas bus baigtas, jie galės pamatyti projekto įsipareigojimų žurnalą ir jame pamatyti savo vardą.

Savo. Christopheris Diazas Riverosas

Bet dabar mes turime problemą. Šis įsipareigojimas neatsiranda our saugykla, tik projekte. Ar prisimenate mūsų nuotolinį ištrauką? Dabar kai tai pasiteisina 🙂

Grįžtame prie pagrindinio filialo ir atliekame šiuos veiksmus:

Savo. Christopheris Diazas Riverosas

Tai mes atsisiuntėme visą pirminio projekto informaciją savo komandai. Kaip matote, ten pasirodo mūsų įsipareigojimas. Dabar mes išsaugosime visą šį darbą savo „Github“ saugykloje, kad galėtume ištrinti šaką, kurioje yra įvestis, kurią jie jau pridėjo prie projekto.

Savo. Christopheris Diazas Riverosas

Dabar, kai turime atnaujintą „Github“ saugyklą, ketiname ištrinti savo filialą, tačiau pirmiausia įsitikiname, kad jis yra mūsų pagrindiniame filiale (kapitonas)

Savo. Christopheris Diazas Riverosas

Kaip matote, aš turėjau nežymią klaidą, taip buvo todėl, kad norėdamas ištrinti buvau savo „Improvement“ skyriuje. Tai nustatoma grįžus į pagrindinį filialą.

Išvada

Atlikta taip paprasta. Dabar, kai jau įsisavinote tamsiąsias „Github“ paslaptis, susijusias su PR siuntimu, laukiu jūsų indėlio į įvairius projektus. Ir jei norite, galite palikti savo pirmąjį PR mano saugykloje osit atminčiai.

Aš nepaliečiau tūkstančio ir vienos „Git“ išmokos (EYE, o ne „Github“) ir, kaip galima tikėtis iš kūrėjų, kurie yra susieti su branduolio bendruomene, „Git“ yra nepaprastai galingas įrankis, turintis šimtus funkcijų.

Norint geriau įsivaizduoti, ką jis daro, ir visą „Git“ galią, aš labai rekomenduoju tai knyga. Esu įsitikinęs, kad tai jums labai padės pagerinti jūsų elgesį su git.

Linkėjimai ir tikiuosi, kad tai jums padės 😉


6 komentarai, palikite savo

Palikite komentarą

Jūsų elektroninio pašto adresas nebus skelbiamas. Privalomi laukai yra pažymėti *

*

*

  1. Atsakingas už duomenis: Miguel Ángel Gatón
  2. Duomenų paskirtis: kontroliuoti šlamštą, komentarų valdymą.
  3. Įteisinimas: jūsų sutikimas
  4. Duomenų perdavimas: Duomenys nebus perduoti trečiosioms šalims, išskyrus teisinius įsipareigojimus.
  5. Duomenų saugojimas: „Occentus Networks“ (ES) talpinama duomenų bazė
  6. Teisės: bet kuriuo metu galite apriboti, atkurti ir ištrinti savo informaciją.

  1.   Cristianas Abrazua sakė

    Puiki pamoka, tikiuosi, galite ir toliau gilintis į „Git“. Ačiū!

  2.   ChrisADR sakė

    Aišku! Kuo greičiau pridėsiu daugiau turinio apie tai ir dar daugiau.

  3.   gustavo sakė

    Puikus

    1.    ChrisADR sakė

      Kaip gerai tai tau tarnavo 😉 Sveikinimai

  4.   balandis sakė

    Kai tik galiu, aš tai praktikuoju, labai ačiū, ši pamoka yra tai, ko aš ilgai ieškojau, bet neradau!

  5.   Ch3ssMaster sakė

    Labai gerai paaiškinta, nuo pagrindų, ačiū. Aš pagerinčiau captuas, kai turėsite laiko.