Giti sissejuhatus: mis see on ja kuidas seda kasutada
Git on avatud lähtekoodiga hajutatud versioonide juhtimissüsteem . Nüüd on Giti määratlemiseks palju sõnu.
Lubage mul see lahti jagada ja selgitada sõnastust:
- Juhtimissüsteem: see tähendab põhimõtteliselt, et Git on sisu jälgija. Nii et Giti saab kasutada sisu salvestamiseks - seda kasutatakse enamasti koodi pakutavate muude funktsioonide tõttu.
- Versioonijuhtimissüsteem : Giti salvestatud kood muutub pidevalt, kui lisatakse rohkem koodi. Samuti saavad paljud arendajad paralleelselt koodi lisada. Nii et versioonihaldussüsteem aitab sellega toime tulla, säilitades muudatuste ajaloo. Samuti pakub Git selliseid funktsioone nagu harud ja ühendamised, mida käsitlen hiljem.
- Hajutatud versioonikontrollisüsteem : Gitil on serveris asuv kaughoidla ja kohalik hoidla, mis on salvestatud iga arendaja arvutisse. See tähendab, et kood ei ole lihtsalt salvestatud keskserverisse, vaid koodi täielik koopia on kõigis arendajate arvutites. Git on hajutatud versioonikontrollisüsteem, kuna kood on olemas iga arendaja arvutis. Kaug- ja kohalike hoidlate mõistet selgitan hiljem käesolevas artiklis.
Miks on vaja versiooni juhtimissüsteemi nagu Git
Päriseluprojektides töötab tavaliselt mitu arendajat paralleelselt. Nii et arendajate vahel pole koodikonflikte, on vaja versiooni juhtimissüsteemi nagu Git.
Lisaks muutuvad selliste projektide nõuded sageli. Niisiis võimaldab versioonikontrollisüsteem arendajatel koodi tagasi minna ja minna selle vanema versiooni juurde.
Lõpuks, mõnikord hõlmavad mitmed paralleelselt käivitatavad projektid sama koodibaasi. Sellisel juhul on Gitis hargnemise mõiste väga oluline.
Alustame Giti kasutamist kohe
Selle asemel, et mainida kõiki mõisteid korraga, selgitan Giti mõisteid ühe näite abil, et seda oleks lihtsam järgida.
Laadige alla git
Sellel lingil on üksikasjad Giti installimise kohta mitmesse opsüsteemi:
//git-scm.com/book/en/v2/Getting-Started-Installing-Git
Kontrollige, kas Git on installitud, kasutades käsureal järgmist käsku:
git --version
Looge oma kohalik Giti hoidla
Looge oma arvutis projekti jaoks kaust. Helistame projekti kausta simple-git-demo
.
Minge oma projekti kausta ja lisage projektile kohalik Giti hoidla järgmiste käskude abil:
cd simple-git-demo git init
git init
Käsk lisab kohaliku Git hoidla projekti.
Lisame nüüd väikese koodi
Looge fail, mida nimetatakse demo.txt
projekti kausta, ja lisage sinna järgmine tekst:
Initial Content
Siin demonstreeritakse tegeliku koodi asemel lihtsalt lihttekstiga, kuna selle artikli põhirõhk on Gitil, mitte ühelgi konkreetsel programmeerimiskeelel.
Koodi seadistamine ja täitmine
Pühendumine on protsess, mille käigus kood lisatakse kohalikku hoidlasse . Enne koodi andmist peab see asuma lavastusalas . Lavastusala on kõigi siduvate failide jälgimiseks.
Ühtegi faili, mida lavastusalale ei lisata, ei siduta. See annab arendajale kontrolli, millised failid tuleb siduda.
Lavastus
Kasutage faili paigutamiseks järgmist käsku:
git add demo.txt
Kui soovite lisada mitu faili, saate seda kasutada:
git add file1 file2 file3
Kui soovite lisada kõik projekti kaustas olevad failid lavastusalale, kasutage järgmist käsku:
git add .
Kasutage seda ettevaatlikult, kuna see lisab kõik teie projekti failid ja kaustad lavastusalale.
Pühendumine
Faili sidumiseks kasutage järgmist käsku:
git commit -m "Initial Commit"
Esialgne kohustus on siin kohustuslik teade. Sisestage asjakohane pühendamisteade, et näidata, milliseid koodimuudatusi selles konkreetses pühendumises tehti.
Giti olek ja Git-logi
Nüüd muutke demo.txt
fail ja lisage järgmine koodilõik:
Initial Content Adding more Content
Staatus
Kasutage git status
teabe leidmiseks selle kohta, milliseid faile on muudetud ja milliseid faile on lavastuspiirkonnas - see näitab ka muud teavet, mida võime praegu eirata.
Oleku nägemiseks kasutage järgmist käsku:
git status
Olek näitab, et seda demo.txt
on muudetud ja see pole veel lavastusalas.
Lisagem nüüd demo.txt
lavastuspiirkonda ja määrake see järgmiste käskude abil:
git add demo.txt git commit -m "demo.txt file is modified"
Logi sisse
Kasutage git log
kõigi seni tehtud toimingute printimiseks.
Selleks kasutatakse järgmist käsku:
git log
Logis kuvatakse iga kohustuse autor, kohustuse kuupäev ja pühendumissõnum.
Filiaalid
Siiani pole me Gitis loonud ühtegi haru. Vaikimisi Git commits minna kapten filiaal.
Mis on haru?
Filiaal pole midagi muud kui viide Giti hoidla viimasele pühendumisele. Nii et praegu on meie põhiharu osutus teisele pühendumisele “demo.txt file is modified”
.
Miks on vaja mitut haru?
Mitme paralleelse arengu toetamiseks on vaja mitut haru. Vaadake allolevat pilti, et näha, kuidas oksad töötavad.

Esialgu tehti 1 ja 2 kohustusi põhiharus. Pärast kohustuse 2 loomist luuakse uus haru, mida nimetatakse testiks, ja 3 ja 4 kohustused lisatakse test harusse.
Samal ajal lisatakse põhiharule erinevad kohustused 3 ja 4. Siit näeme, et pärast Commit 2 tehakse kaks paralleelset arendustööd kahes eraldi harus.
Test haru ja pea haru on siin lahknenud ja neil on erinev kood - test haru koodi saab pea haruga ühendada git merge
. Seda käsitletakse hiljem.
Looge uus filiaal rakenduses Local
Looge uus haru nimega test, kasutades järgmist käsku:
git branch test
See käsk loob test
haru.
Oleme endiselt põhiharu kontekstis. test
Filiaalile üleminekuks . kasutage järgmist käsku:
git checkout test
Nüüd oleme test
filiaalis.
Kõiki kohalikke harusid saate loetleda järgmise käsu abil:
git branch
Tehke mõned kohustused uues harus
Muutmiseks demo.txt
lisage järgmine koodilõik:
Initial Content Adding more Content Adding some Content from test Branch
Nüüd tehke järgmist ja tehke järgmist, kasutades järgmisi käske:
git add demo.txt git commit -m "Test Branch Commit"
See kohustus tehti katseosakonnas ja nüüd edestab testharu 1-ga pühendumist - kuna testharu sisaldab ka 2 põhiharu tehtud kohustust.
Testfailis saate kinnitada kohustuste ajalugu, kasutades järgmist:
git log
Ühinemine
Praegu edestab Test Branch Meistrit 1 pühendumisega. Ütleme nii, et nüüd tahame, et kogu testkontori kood viiakse tagasi peaharu juurde. See on koht, kus git merge
on väga kasulik.
Koodi ühendamiseks testhargist põhiharuks toimige järgmiselt.
Kõigepealt pöörduge tagasi peaharu juurde:
git checkout master
Seejärel käivitage merge
käsk:
git merge test
Pärast nende kahe käsu käivitamist peaks liitmine olema edukas. Selles näites pole konflikte.
Kuid reaalsetes projektides tekib ühendamise ajal konflikte. Konflikti lahendamine on midagi, mis kaasneb kogemustega, nii et kui te töötate rohkem Gitiga, saate konfliktide lahendamise varjata.
Jookse git log
nüüd ja märkate, et kaptenil on ka 3 kohustust.
Kaug-Giti hoidla
Siiani oleme töötanud ainult kohalikus hoidlas. Iga arendaja töötab oma kohalikus hoidlas, kuid lõpuks lükkab nad koodi kaughoidlasse. Kui kood on kaughoidlas, saavad teised arendajad seda koodi vaadata ja muuta.

GitHub
Siin kasutame kaughoidla jaoks GitHubi.
Minge saidile //github.com/ ja looge konto.
Pärast GitHubi avalehel registreerumist klõpsake uue Giti hoidla loomiseks nuppu Alusta projekti . Andke hoidlale nimi ja klõpsake nuppu „Loo hoidla“
Pange nimi nimeks git-blog-demo
.
See loob GitHubis kaughoidla ja hoidla avamisel avaneb selline leht nagu allolev pilt:

Hoidla URL on esile tõstetud osa //github.com/aditya-sridhar/git-blog-demo.git
Kohaliku hoidla kaughoidla suunamiseks kasutage järgmist käsku:
git remote add origin [repository url]
Git Push
Kogu koodi kohalikust hoidlast kaughoidlasse sisestamiseks kasutage järgmist käsku:
git push -u origin master
See lükkab koodi kohalikus hoidlas peaharust kaughoidla põhiharuni.
Lisakäsud
Git Pull
git pull
Kasutatakse kaughoidlast viimaste muudatuste kohalikku hoidlasse tõmbamiseks. Erinevad arendajad värskendavad kaughoidla koodi pidevalt, seega git pull
on see vajalik:
git pull origin master
Git Kloon
git clone
kasutatakse olemasoleva kaughoidla kloonimiseks arvutisse. Selle käsk on:
git clone [repository url]
Palju õnne
Nüüd teate Giti kasutamise põhitõdesid, nii et jätkake ja uurige rohkem!
Varsti avaldan veel ühe artikli Giti veidi arenenumatest kontseptsioonidest. Püsige lainel!
Autori kohta
Ma armastan tehnoloogiat ja jälgin tehnoloogia arengut. Mulle meeldib ka teisi aidata kõigi teadmistega, mis mul tehnoloogiaruumis on.
Võtke julgelt ühendust minuga oma LinkdIni kontol //www.linkedin.com/in/aditya1811/
Samuti saate mind jälgida twitteris //twitter.com/adityasridhar18
Minu veebisait: //adityasridhar.com/
Muud minu postitused
Kuidas Giti tõhusalt kasutada