Napredna vadnica za Git

Napredna vadnica za Git

Razmestitev vašega projekta prek oddaljenega skladišča vam omogoča prilagodljivo upravljanje vsakega njegovega kosa. Popravki napak, posodobitve funkcij, brisanje datotek, timsko delo, odprtokodni prispevki, uvajanje kode in drugo so vam na dosegu roke z močnim poznavanjem Gita.





Torej ste uporabljali Git, a želite izvedeti več? Tukaj je nekaj naprednejših nasvetov Git, s katerimi bo vaša različica projekta postala lahka.





Git Branch

Podružnica Git preprečuje potiskanje neposredno na glavno vejo. Koristno je, če projekt vodite z ekipo razvijalcev. Ustvarite lahko poljubno število vej Git in jih pozneje združite z glavno vejo.





Ustvarite podružnico Git

Če želite ustvariti podružnico Git, uporabite:

git branch branch_name

Preklopite na Git Branch

Uporaba preveri preklop na podružnico Git:



git checkout branch_name

Ko preklopite na podružnico, lahko spremembe izvedete z uporabo git add -vse . Nato jih zavežite z uporabo git commit -m 'ime za urejanje' ukaz.

Primerjajte podružnico z mojstrom

Uporabi git diff ukaz:





git diff master..branch_name

Če želite primerjati določene datoteke:

git diff master..testb -- main.html

Primerjava dveh vej je podobna temu, kako primerjate vejo z glavnim:





git diff branch1..branch2

Če si želite ogledati razlike v določeni datoteki med dvema vejama:

git diff branch1..branch2 -- main.html

Potisnite spremembe na oddaljeno vejo

Morda boste želeli, da bi drug razvijalec pogledal spremembe, ki ste jih naredili v datoteki v vaši lokalni podružnici, preden jih potisnete v živo. Dobra praksa je, da lokalno podružnico Git potisnete v oddaljeno repliko, da si jo lahko ogledajo.

Predpostavimo, da ste že ustvarili lokalno podružnico z imenom spremembe . Lahko preklopite na to lokalno podružnico, prilagodite vse datoteke, ki jih želite, nato stopite in jih predate tej veji.

Te spremembe lahko nato potisnete v oddaljeno različico veje:

git push origin changes

Združite oddaljeno vejo z glavnim z uporabo povlečne zahteve

Torej je drug programer revidiral spremembe v oddaljeni veji ( spremembe ). Vendar ga želite združiti z glavno vejo in jo potisniti v živo.

Ne pozabite, da vaša oddaljena veja podeduje ime vaše lokalne podružnice Git ( spremembe ). Evo, kako združiti spremembe:

Preklopite na glavno vejo:

git checkout master

Povlecite izvor ali GLAVO veje ( spremembe ), da ga združite z glavno vejo:

git pull origin changes

To združitev v živo potisnite v glavno vejo:

git push origin master

Namesto tega uporabite Git Merge

Če želite podružnico združiti z glavnim, uporabite datoteko pojdi ukaz:

Preseli v glavno vejo:

git checkout master

Združite z vejo ( spremembe ):

git merge changes

Nato pritisnite združitev v živo na glavno vejo:

kako povedati, kdo vas ni spremljal na instagramu
git push origin master

Zamenjajte spremembe z imenom vaše podružnice.

Ko je združitev uspešna, lahko to storite lokalno in na daljavo izbrišite podružnico če ga ne potrebujete več:

Povezano: Kako preimenovati vejo v Gitu

Git Rebase

Če imate več vej z zastarelimi potrditvami, jih lahko znova postavite ali znova osredotočite glava/ref teh vej podedovati glava/ref posodobljenega.

Ponovno ustvarjanje zbirk zato pride prav, ko morate nekatere veje posodobiti z osnovo trenutne.

Ponovna postavitev ne bi smela biti pogosto dejanje, še posebej, če delate z ekipo, saj lahko moti celoten potek dela. Če pa delate sami in ste seznanjeni s svojim potekom dela in vejami, ponovna postavitev ne bi smela povzročiti opustošenja, če veste, kje in kako jo uporabiti.

Predpostavimo na primer, da imate dve veji; veja1 in veja2. Že nekaj časa niste spremenili podružnice1. Vendar pa dosledno uveljavljate spremembe v podružnici2, tudi v zadnjem času.

Zato ste se odločili, da nosite branch1 skupaj s tokom. Ponovna postavitev veje1 v podružnico2 torej pomeni, da poveljujete podružnici1, naj ignorira svoje prejšnje predaje in podeduje nedavno predajo, podano veji2.

Tako lahko to storite:

Preklopite na opuščeno podružnico (veja1):

git checkout branch1

Nato prerazporedite vejo1 v posodobljeno vejo2:

git rebase branch2

Git Squash

Git squash omogoča združevanje več oddaj v eno. Pomaga pri teku git commit večkrat na eni posodobitvi. Praktičen primer je, ko ima vsak popravek napak ali popravek kode za posamezno funkcijo ločeno potrditev.

Morda pa ne želite pritisniti zaveze HEAD s spremljevalnimi, saj imajo vsi isti namen. Priporočen pristop je, da jih zmešate v eno, da se izognete zmedi pri sledenju zavezom.

Najboljši način za skvoš potrditev je prek interaktivnega načina ponovne vzpostavitve. Če želite to bolje razumeti, si oglejte spodnji primer.

V tem primeru predpostavimo, da imate pet popravkov napak. In za vsakega od njih obstaja zaveza. Evo, kako lahko teh pet zavez strnete v eno:

Teči git reflog če si želite ogledati razpršeno kodo svojih urejanj:

git reflog

Tukaj je rezultat v tem primeru:

Zdaj je vaš cilj, da začnite z zadnjimi petimi zavezami prvi popravek do peti popravek .

Če želite to narediti, kopirajte hash kodo urejanja spodaj prvi popravek ( 0a83962 ). Nato pritisnite Vprašanje zapustiti reflog .

Zdaj teči git rebase -interaktivno na tem hashu.

git rebase --interactive 0a83962

Git nato odpre interaktivno datoteko za obnovitev, ki izgleda takole:

Če želite izničiti zaveze, razen prvi popravek , zamenjati izbrati z s za vsako drugo zavezo:

Shranite in zaprite to datoteko.

Nato se odpre še ena datoteka, v kateri lahko preimenujete strnjeno potrditev:

ali lahko vrnem igro na steamu

Očistite jih in vnesite želeno ime za zmečkano potrditev:

Shranite to datoteko. Nato ga zaprite in v terminalu boste prejeli sporočilo o uspehu.

Opomba: Interaktivna datoteka se lahko odpre v terminalu. Če pa uporabljate Windows, boste morda želeli prisiliti svoj terminal, da globalno odpre datoteke v vašem najljubšem urejevalniku besedil, da bo olajšanje stiskanja.

Če želite to narediti, odprite ukazno vrstico in zaženite:

git config --global core.editor ''path to choice text editor' -n -w'

Git Fork proti Git Clone

Forking in kloniranje sta dva različna izraza v Gitu. Svojega skladišča ne morete razcepiti, saj je že pri vas. Lahko pa razcepite skladišče drugih ljudi in ga nato klonirate.

Forking skladišča pomeni, da zgrabite kopijo skladišča nekoga in ga naredite svojega. Ko dobite kopijo tega repozitorija, ga lahko klonirate, kot bi to storili v katerem koli od vaših git skladišč za lokalne spremembe.

Evo, kako klonirajte oddaljeno skladišče na GitHubu in začnite prenos v svoj lokalni imenik:

git clone https://github.com/username/repository_name.git/

Obnovite datoteko v privzeto stanje

Če želite po zadnji izdaji izbrisati spremembe v datoteki, lahko uporabite datoteko git obnoviti ukaz:

git restore filename

Spremenite zavezo

Lahko se vrnete na prejšnjo potrditev, če pozabite narediti nekaj datotek med postavitvijo.

Spremenite datoteko, ki ste jo pozabili. Nato uporabite git spremeniti za pregled zaveze:

git add file_forgotten
git commit --amend

Odstrani datoteke

Z uporabo lahko odstranite določene datoteke, ki ste jih uprizorili pojdi rm ukaz:

git rm --cached filename

Odstranite lahko tudi več datotek hkrati:

git rm --cached file1 file2 file3 file4

Ne pozabite dodati ustrezne razširitve datoteke kateri koli datoteki, ki jo izvlečete. Na primer, datoteka z navadnim besedilom mora biti ime datoteke.txt .

Povezano: Kako očistiti Git in odstraniti datoteke brez sledi

Git Ponastavi

Uporaba git reset je v pomoč, če želite naenkrat opustiti vse datoteke, ki ste jih postavili za izdajo:

git reset

Git reset HEAD pa kaže HEAD veje na določeno predajo v vašem delovnem drevesu. Če na primer še niste potisnili trenutne zaveze, se lahko vrnete na nedavno potisnjeno zavezo:

git reset --soft HEAD~1

Zamenjati --mehko z -trdo če ste že potisnili trenutno zavezo:

git reset --hard HEAD~1

Pojdi nazaj

Za razliko od ponastaviti ukaz, pojdi nazaj ohranja celovitost vaše zgodovine obveznosti. To je priročno, če želite spremeniti urejanje zaradi napak ali hroščev.

Ne opusti ciljne zaveze in ne naredi nove. Namesto tega se vrne na nedavne spremembe, ki jih naredite, ne da bi izbrisali ali preimenovali takšno zavezo. To je odličen način, da vaše obveznosti ostanejo čistejše, poleg tega pa je varnejše kot ves čas ponastavitve.

Če se želite vrniti na zavezo:

git revert HEAD~1

Kje GLAVA ~ 1 kaže na določeno zavezo v vašem delovnem drevesu.

Izbrišite datoteko, ki ji sledite, ali imenik

Lahko uporabiš git rm -f da izbrišete vse datoteke, ki jih spremljate v svojem delovnem drevesu. Upoštevajte pa, da Git ne more odstraniti nepreglednih datotek, saj jih ne predpomni.

Postopno datoteko izbrišete tako:

git rm -f filename

Postopno mapo odstranite tako:

git rm -r -f foldername

Git Logging

Za ogled dnevnikov urejanja in zgodovine v Gitu:

git log

Za beleženje dejavnosti v določeni veji:

git log branch_name

Povezano: Kako pregledati zgodovino projekta z git log

Včasih se boste morda želeli vrniti na opuščeno zavezo. Če si želite ogledati opuščene zaveze, vključno z ustreznimi:

git reflog

Če si želite ogledati dnevnike ref za določeno vejo:

git reflog branch_name

Upravljajte svoje projektne različice kot profesionalec z Gitom

Z Gitom, ki ponuja številne prednosti, lahko upravljate svoje izdaje projektov na daljavo, ne da bi v svoji glavni podružnici vlomili datoteke in mape. Poleg tega vam omogoča enostavno vodenje projektov z ekipo.

Kot ste videli, ima Git številne funkcije, ki jih lahko raziščete. Vendar bodite previdni pri uporabi teh funkcij namensko. V nasprotnem primeru lahko na koncu pokvarite stvari. Kljub temu lahko še vedno zaženete demo shrambo za demo in se igrate s temi funkcijami.

Deliti Deliti Cvrkutati E-naslov Upravljajte različice datotek kot programer z Gitom

Programerji so ustvarili sisteme za nadzor različic (VCS) za reševanje težav pri nadzoru različic datotek. Poglejmo osnove nadzora različic z današnjim vrhunskim sistemom, Git.

Preberite Naprej
Sorodne teme
  • Programiranje
  • Spletni razvoj
  • GitHub
  • Vadnice za kodiranje
O avtorju Idisou Omisola(94 objavljenih člankov)

Idowu je navdušen nad vsemi pametnimi tehnologijami in produktivnostjo. V prostem času se igra s kodiranjem in se, ko mu je dolgčas, preklopi na šahovsko tablo, rad pa se občasno tudi odmika od rutine. Njegova strast, da ljudem pokaže pot okoli sodobne tehnologije, ga motivira, da piše več.

Več od Idowu Omisola

Naročite se na naše novice

Pridružite se našemu glasilu za tehnične nasvete, ocene, brezplačne e -knjige in ekskluzivne ponudbe!

Kliknite tukaj, če se želite naročiti