UNNIÐ MEÐ GIT

Verklag

  1. Stofna reikning á GitHub
    • Þegar reikningur er stofnaður á GitHub þá er staðfesting send á tölvupóstfangið sem tilgreint er í umsókninni.
    • Eftir að hafa staðfest umsóknina þá er hægt að nota github reikningin til að búa til geymslur, afrita geymslur frá öðrum og verið í samstarfi við aðra notendur á GitHub.

Staðtengd geymsla búin til (local) og færð yfir á GitHub

Þegar þú byrjar á verkefni þá:

  1. Opnar þú Git Bash CLI
  2. Stofnar geymslu (repository) sem heldur utan um verkefnið
  3. Lætur Git vakta vinnuferlið

Til að geta sent gögn yfir á GitHub frá tölvunni þinni þarftu að skrá eftrifarandi skipanir í Git Bash

  • git config --global user.name "nafnReiknings"
  • git config --global user.email "þinn@tolvupost.ur"

  • Hvar á geymslan (Repository) að vera á tölvunni?
    • cd er CLI skipun og stendur fyrir “Change Directory”
  • Dæmi:
    • cd Desktop/
    • mkdir verkefni-1 mkdir = býr til möppuna verkefni-1 á skrifborði (desktop) tölvunnar.
    • cd verkefni-1
      1. $ echo "# Verkefni 1" >> README.md
      2. $ git init
      3. $ git add README.md
      4. $ git commit -m "útskýring á framkvæmd"
      5. $ git remote add origin https://github.com/þinnReikningur/verkefni-1.git
      6. $ git push -u origin master

Hér að ofan eru sýndar 6 skipanir til að búa til Git geymslu. Hvað gera svo þessar skipanir

  1. skjal búið til » sem heitir README.md og texti skráð í skjalið echo “# Verkefni 1”
  2. git init býr til umsjónarkerfi fyrir nýju geymsluna. Kerfið er í möppu sem er falin (hidden). Hægt er að skoða hana með því að stilla Explorer - View - [x] Hidden items (Ekki eiga neitt við gögnin sem eru í .git).
  3. git add . Git skrásetur stöðu verkefnisins á þessum tímapunkti það má kalla það sviðsetningu.
  4. git commit -m “útskýring” Til að geta skoðað stöðuna síðar verður útskýring að fylgja sviðsetningunni.
  5. git remote add origin skráir “Geymsla.git” í GitHub reikning þinn
  6. Í fyrsta sinn sem geymslunni er ýtt úr höfn þá verður -u origin master að fylgja með git push.

Eftir að geymsla hefur verið stofnuð og afriti komið fyrir á GitHub þá er næsta skref að vísa Git Bash á geymsluna til að vakta verkefnið, dæmi: cd Desktop/verkefni-1/ . Síðan er hægt að vinna í verkefninu og senda gögn á milli vinnusvæðis og GitHub með því að nota git push til að senda gögn og git pull til að sækja gögn.

Geymsla búin til á GitHub og klónuð (clone) í staðtengda (local) geymslu.

Með því að stofna geymslu á GitHub og klóna hana síðan yfir í staðtengda geymslu (local) þá hefur þú sömu upplýsingar í báðum geymslum. Git hefur allar upplýsingar um staðtengdu og fjartengdu geymsluna og nú getur þú byrjað strax að vinna.

Verklag

  • Búa til geymslu á GitHub reikning -> [New repository]
  • Það er mikilvægt að haka við “Create repository with README.md” einnig er skynsamlegt að velja .gitignore og Licence í leiðinni,
  • git clone Klóna geymsluna yfir á vinnusvæði þitt

Nokkrar Linux CLI umsýsluskipanir

  • pwd print working directory Sýnir staðsetningu Git Bash
  • ls list items Sýnir öll gögn í viðkomandi möppu
  • cd change directory Skipt um staðsetningu
  • cd mappa1/ Farið ofaní möppu 1
  • cd mappa1/mappa2 Farið ofaní möppu 2 sem er inn í möppu 1
  • cd ../ Farið upp úr möppu
  • cd ../../ Farið upp úr 2 möppum
  • cd .. Farið uppúr öllum möppum [User]
  • Yfirlit Unix/Linux skipanir - .pdf

Git add [filename]

Efir að hafa opnað Git Bash og vísað á Git geymslu þá fylgist forritið með allri textavinnslu og breytingum á þeim. Skipanirnar $ git add [heiti skjals]' og $ git commit -m 'lýsing...' afrita stöðu verksins og Git býr til tímamót sem hægt er að fara á síðar. Þessi aðgerð er kölluð sviðsetning (staging). Skipunin $ git add . tekur allar skrár sem hafa verið breytt eða bæst við og setur þær á svið. Það má líkja Git við upptökutæki sem afritar allt sem hamrað er á lyklaborðið.

Git Commit -m ´Lýsing verkþáttar’

Eftir nokkrar skráningar höfum við myndað tímalínu og þá er hægt að fara í gegnum allt vinnuferlið, þá skiptir máli hvað var skráð í commit -m ‘’ skipunina svo hægt sé að byrja aftur á öðrum tímapunkti og tekið aðra stefnu með kóðann á nýrri grein (branch), hann getur síðan þróast samhliða upprunalegum kóða og á einhverjum tímapunkti sameinaður (merge) aðalgreininni sem nefnd er “Master”.

Tímaflakk

Til að skoða tímalínuna þá er git log skipunin notuð. Með hverri vistun fylgir skýring (commit -m) sem þú skráðir ásamt langri talnarunu “04c98c7b7744c9c6e23ba28a302710513805e89a”. Það er þessi talnaruna sem vísað er í til að komast aftur á tiltekin stað í verkferlinu. Til að komast síðan út úr log glugganum er nóg að ýta á “CTRL” + “Q”. Til að fara til baka með allt verkferlið þá er skipunin git checkout 04c98c7b77 Það þarf ekki að nota alla talnarununa til að Git finni rétta færslu.

Greinar í Git (Branches)

Það má sjá fyrir sér Git kerfið sem tré með stofni og greinum. Stofnin er nefndur “Master” og ef þú slærð inn skipunina git branch þá birtir Git lista yfir allar greinar sem eru í notkun í geymslunni.

  • Í upphafi er aðeins stofnin (Master) í geymslunni
  • Til að búa til grein er skipunin git branch [heiti greinar] notuð.
  • Til að fara yfir á grein er skipunin git checkout [heiti greinar] notuð.

Git býður upp á möguleika að vera með margar útgáfur af sama kóða. Dæmi: þú vilt búa til nýja útgáfu af kóða sem þú ert að vinna í en byrja þar sem þú varst staddur 2 dögum fyrr.

  • git log Git birtir lista með öllum færslum (commits). Veldu fyrstu 7 tölurnar úr þeirri talnarunu sem passar við færsluna sem þú vilt komast á.
  • ýttu á takkann “q” til að komast úr listanum
  • git checkout 04c98c7 -> Færir þig á eldri útgáfu af “master”
  • git branch grein1 -> býr til nýja útgáfu af kóðanum sem gerð var 2 dögum fyrr, hér getur þú tekið aðra stefnu með kóðann.

Til að sameina greinar þá þarftu að vera á þeirri grein sem verður eftir t.d.

  • git checkout master
  • git merge grein1 greinin er sameinuð “master”

Engin takmörk eru fyrir því hversu margar greinar geta verið í gangi í einu skjali en það er skynsamlegt að hafa þær fáar og blanda saman kóðanum reglulega (merge) við upprunalega útgáfu (master) eða eyða útgáfum sem eru ekki að ganga upp.

Til að eyða grein þá þarftu að vera á “master”

  • git -d grein1 greininni er eytt, það hefur ekki áhrif á stöðu “master” eða annara greina.