Hvernig á að nota Git útgáfustýringarkerfi í Linux [Alhliða handbók]


Útgáfustýring (endurskoðunarstýring eða upprunastýring) er leið til að skrá breytingar á skrá eða safni skráa í tímans rás svo að þú getir afturkallað tilteknar útgáfur síðar. Útgáfustýringarkerfi (eða VCS í stuttu máli) er tæki sem skráir breytingar á skrám á skráarkerfi.

Það eru mörg útgáfustýringarkerfi þarna úti, en Git er eins og er vinsælast og oft notað, sérstaklega fyrir frumkóðastjórnun. Útgáfustýring er í raun hægt að nota fyrir næstum hvers kyns skrár á tölvu, ekki aðeins frumkóða.

Útgáfustýringarkerfi/tól bjóða upp á nokkra eiginleika sem gera einstaklingum eða hópi fólks kleift að:

  • búa til útgáfur af verkefni.
  • fylgstu nákvæmlega með breytingum og leystu árekstra.
  • sameina breytingar í sameiginlega útgáfu.
  • afturkalla og afturkalla breytingar á völdum skrám eða heilu verkefni.
  • fáðu aðgang að sögulegum útgáfum af verkefni til að bera saman breytingar yfir tíma.
  • sjáðu hver breytti síðast einhverju sem gæti valdið vandræðum.
  • búið til öruggt öryggisafrit af verkefni.
  • notaðu margar vélar til að vinna að einu verkefni og svo miklu meira.

Verkefni undir útgáfustýringarkerfi eins og Git mun aðallega hafa þrjá hluta, þ.e.

  • geymsla: gagnagrunnur til að skrá stöðu eða breytingar á verkefnaskrám þínum. Það inniheldur öll nauðsynleg Git lýsigögn og hluti fyrir nýja verkefnið. Athugaðu að þetta er venjulega það sem er afritað þegar þú klónar geymslu úr annarri tölvu á neti eða ytri netþjóni.
  • vinnuskrá eða svæði: geymir afrit af verkefnaskránum sem þú getur unnið í (bæta við, eyða og öðrum breytingaaðgerðum).
  • sviðsetningarsvæði: skrá (þekkt sem index undir Git) í Git möppunni, sem geymir upplýsingar um breytingar, sem þú ert tilbúinn til að skuldbinda (vista stöðu skráar eða safn af skrám) í geymsluna.< /li>

Það eru tvær megingerðir af VCS, þar sem aðalmunurinn er fjöldi geymsla:

  • Centralized Version Control Systems (CVCSs): Hér fær hver meðlimur verkefnishópsins sína eigin vinnuskrá, en þeir binda breytingar á eina miðlæga geymslu.
  • Dreift útgáfustýringarkerfi (DVCS): undir þessu fær hver meðlimur verkefnishópsins sína eigin vinnuskrá og Git möppu þar sem þeir geta gert skuldbindingar. Eftir að einstaklingur hefur skuldbundið sig á staðnum geta aðrir liðsmenn ekki fengið aðgang að breytingunum fyrr en hann/hún ýtir þeim í miðlæga geymsluna. Git er dæmi um DVCS.

Að auki getur Git geymsla verið ber (geymsla sem er ekki með vinnuskrá) eða óber (ein með vinnuskrá). Sameiginlegar (eða opinberar eða miðlægar) geymslur ættu alltaf að vera lausar - allar Github geymslur eru lausar.

Lærðu útgáfustýringu með Git

Git er ókeypis og opinn uppspretta, hratt, öflugt, dreift, auðvelt í notkun og vinsælt útgáfustýringarkerfi sem er mjög skilvirkt í stórum verkefnum og er með ótrúlegt greiningar- og samrunakerfi. Það er hannað til að meðhöndla gögn meira eins og röð af skyndimyndum af litlu skráakerfi, sem er geymt í Git möppu.

Verkflæðið undir Git er mjög einfalt: þú gerir breytingar á skrám í vinnumöppunni þinni, bætir svo bara þeim skrám sem hafa breyst valið við sviðsetningarsvæðið til að vera hluti af næsta skuldbindingu þinni.

Þegar þú ert tilbúinn gerirðu commit, sem tekur skrárnar frá sviðssvæðinu og vistar þá skyndimynd varanlega í Git möppuna.

Til að setja upp Git í Linux, notaðu viðeigandi skipun fyrir dreifingu að eigin vali:

$ sudo apt install git   [On Debian/Ubuntu]
$ sudo yum install git   [On CentOS/RHEL]

Eftir að Git hefur verið sett upp er mælt með því að þú segjir Git hver þú ert með því að gefa upp fullt nafn og netfang, eins og hér segir:

$ git config --global user.name “Aaron Kili”
$ git config --global user.email “[email ”

Til að athuga Git stillingarnar þínar skaltu nota eftirfarandi skipun.

$ git config --list 

Býr til nýja Git geymslu

Sameiginlegar geymslur eða miðstýrð verkflæði eru mjög algeng og það er það sem við munum sýna hér. Til dæmis gerum við ráð fyrir að þér hafi verið falið að setja upp fjarlæga miðlæga geymslu fyrir kerfisstjóra/forritara frá ýmsum deildum í fyrirtækinu þínu, til að vinna að verkefni sem kallast bashscripts, sem verður geymt undir /projects/scritpts/ á þjóninum.

SSH inn á ytri netþjóninn og búðu til nauðsynlega möppu, búðu til hóp sem heitir sysadmins (bættu öllum meðlimum verkefnishópsins við þennan hóp t.d. notendastjóra) og stilltu viðeigandi heimildir fyrir þessa möppu.

# mkdir-p /projects/scripts/
# groupadd sysadmins
# usermod -aG sysadmins admin
# chown :sysadmins -R /projects/scripts/
# chmod 770 -R /projects/scripts/

Settu síðan upp lausa verkefnageymslu.

# git init --bare /projects/scripts/bashscripts

Á þessum tímapunkti hefurðu frumstillt beina Git möppu sem er miðlæg geymsluaðstaða fyrir verkefnið. Reyndu að gera lista yfir möppuna til að sjá allar skrárnar og möppurnar þar:

# ls -la /projects/scripts/bashscripts/

Klóna Git geymslu

Klónaðu nú ytri sameiginlegu Git geymsluna á staðbundna tölvuna þína í gegnum SSH (þú getur líka klónað í gegnum HTTP/HTTPS ef þú ert með vefþjón uppsettan og viðeigandi stilltan, eins og raunin er með flestar opinberar geymslur á Github), til dæmis:

$ git clone ssh://[email _server_ip:/projects/scripts/bashscripts 

Til að klóna það í ákveðna möppu (~/bin/bashscripts), notaðu skipunina hér að neðan.

$ git clone ssh://[email _server_ip:/projects/scripts/bashscripts ~/bin/bashscripts

Þú ert nú með staðbundið tilvik af verkefninu í óberandi geymslu (með vinnuskrá), þú getur búið til upphafsskipulag verkefnisins (þ.e. bætt við README.md skrá, undirmöppur fyrir mismunandi flokka forskrifta, td recon til að geyma könnunarforskriftir, sysadmin ro geyma sysadmin forskriftir o.s.frv.):

$ cd ~/bin/bashscripts/
$ ls -la

Athugaðu Git stöðusamantekt

Til að sýna stöðu vinnuskrárinnar þinnar skaltu nota stöðuskipunina sem sýnir þér allar breytingar sem þú hefur gert; hvaða skrár eru ekki raktar af Git; þær breytingar sem hafa verið settar á svið og svo framvegis.

$ git status 

Git Stage Changes og Commit

Næst skaltu setja allar breytingar á svið með því að nota add skipunina með -A rofanum og gera upphaflega skuldbindinguna. -a fáninn gefur skipunina fyrirmæli um að setja sjálfkrafa skrár sem hefur verið breytt og -m er notað til að tilgreina commit skilaboð:

$ git add -A
$ git commit -a -m "Initial Commit"

Birtu staðbundnar skuldbindingar í Remote Git Repository

Sem verkefnateymisstjóri, nú þegar þú hefur búið til verkskipulagið, geturðu birt breytingarnar á miðlægu geymslunni með því að nota push skipunina eins og sýnt er.

$ git push origin master

Núna ætti staðbundna git geymslan þín að vera uppfærð með miðlæga geymslu verkefnisins (uppruna), þú getur staðfest þetta með því að keyra stöðuskipunina einu sinni enn.

$ git status

Þú getur líka sagt þér samstarfsfólk um að byrja að vinna að verkefninu með því að klóna geymsluna á staðbundnar tölvur þeirra.

Búðu til nýja Git útibú

Útibú gerir þér kleift að vinna að eiginleikum verkefnisins þíns eða laga vandamál fljótt án þess að snerta kóðagrunninn (meistaraútibú). Til að búa til nýtt útibú og skipta síðan yfir í það, notaðu útibúið og útskráningarskipanirnar í sömu röð.

$ git branch latest
$ git checkout latest

Að öðrum kosti geturðu búið til nýtt útibú og skipt yfir í það í einu skrefi með því að nota kassaskipunina með -b fánanum.

$ git checkout -b latest

Þú getur líka búið til nýtt útibú byggt á öðru útibúi, til dæmis.

$ git checkout -b latest master

Til að athuga hvaða útibú þú ert í skaltu nota útibússkipun (stjarna táknar virka útibúið):

$ git branch

Eftir að hafa búið til og skipt yfir í nýja útibúið skaltu gera nokkrar breytingar undir henni og gera nokkrar skuldbindingar.

$ vim sysadmin/topprocs.sh
$ git status
$ git commit add  sysadmin/topprocs.sh
$ git commit -a -m 'modified topprocs.sh'

Sameina breytingar úr einni grein í aðra

Til að sameina breytingarnar undir greinarprófinu í aðalútibúið skaltu skipta yfir í aðalútibúið og gera sameininguna.

$ git checkout master 
$ git merge test 

Ef þú þarft ekki lengur ákveðna útibú, geturðu eytt henni með -d rofanum.

$ git branch -d test

Sæktu breytingar frá fjarlægri miðlægri geymslu

Að því gefnu að liðsmenn þínir hafi ýtt undir breytingar á miðlægu verkefnageymslunni geturðu halað niður hvaða breytingum sem er á þínu staðbundna tilviki verkefnisins með því að nota pull skipunina.

$ git pull origin
OR
$ git pull origin master	#if you have switched to another branch

Skoðaðu Git geymsluna og gerðu samanburð

Í þessum síðasta hluta munum við fjalla um nokkra gagnlega Git eiginleika sem halda utan um allar aðgerðir sem gerðust í geymslunni þinni og gera þér þannig kleift að skoða verkferilinn.

Fyrsti eiginleikinn er Git log, sem sýnir skuldbindingar:

$ git log

Annar mikilvægur eiginleiki er sýningarskipunin sem sýnir ýmsar gerðir af hlutum (svo sem skuldbindingar, merki, tré osfrv.):

$ git show

Þriðji mikilvægi eiginleikinn sem þú þarft að vita er diff skipunin, notuð til að bera saman eða sýna mun á milli útibúa, sýna breytingar á milli vinnumöppu og vísitölu, breytingar á milli tveggja skráa á diski og svo margt fleira.

Til dæmis til að sýna muninn á meistara og nýjustu útibúinu geturðu keyrt eftirfarandi skipun.

$ git diff master latest

Git gerir hópi fólks kleift að vinna saman með því að nota sömu skrá(r), á meðan að taka upp breytingar á skránum/skránum með tímanum svo að þeir geti munað tilteknar útgáfur síðar.

Þannig geturðu notað Git til að stjórna frumkóða, stillingarskrám eða hvaða skrá sem er geymd á tölvu. Þú gætir viljað vísa til Git Online Documentation fyrir frekari skjöl.