GIT

Útgáfustjórnun - Version Control System

Það hendir alla einhverntíma að yfirrita eða eyða texta/kóða sem tekið hefur langan tíma að þróa og fullgera. Þetta vandamál er enn tíðara þegar unnið er í hóp að sameiginlegum verkefnum. Vandamálið hefur fylgt ritvinnslu á tölvum frá upphafi. Margt hefur verið reynt og framkvæmt til að leysa það.

Umsjónarkerfi hafa verið í stöðugri þróun og þau hafa yfirleitt verið miðlæg, þar sem notendur taka út skjöl, vinna þau og setja síðan aftur inn á sameiginlegan miðlara sjá nánar hér (Wiki). Vandamálið við þá lausn er að miðlarinn getur bilað eða virkað einkennilega og fer þá mikill tími og vinna til spillis.

Hvað er Git?

GIT lausnin sem hér er kynnt, er hönnuð á annan hátt og er byggð upp á gagnadreifingu (Distribution Version Control). Ólíkt öðrum kerfum getur Git séð um útgáfustjórn án viðkomu gagnamiðils (server).

Git er hugbúnaður sem búinn var til af Linus Torvalds, höfundi Linux stýrikerfisins. Linus bjó til Git til að sjá um útgáfustjórn fyrir Linux kernelinn, en gaf það svo út á endanum til almennings. Git er í dag vinsælasta kerfið til að sjá um útgáfustjórnun.

Samvinna

Git er hannað til að halda utanum verkefni með dreifðri útgáfustjórn (Distribute Version Control). Það þýðir að þátttakendur í hópverkefni eru allir með eintak af öllu verkefninu. Git sér um að hindra árekstra og eyðingu gagna sem eru í vinnslu. Mikið öryggi fellst í dreifingu verksins vegna þess að ekki er hægt að eyða öllum útgáfunum í einu eða öll vinnsla stöðvist vegna þess að miðlari (server) fer á hliðina vegna álags eða kerfishruns.

Goggun „Fork“ og klónun „Git clone“

Töluverður munur er á ofantöldum aðgerðum. Þegar geymsla (repository) er gogguð „Fork“ þá færðu nýtt eintak af geymslunni sem tilheyrir þínum reikningi. Þú getur gert hvað sem er við innihald geymslunnar og það hefur engin áhrif á upprunalega geymslu. Hinsvegar ef þú villt láta höfund geymslunnar vita hvað þú ert að bralla, þá getur þú sent honum skilaboð í gegnum skilaboðakerfið „Pull request“. Þar getur höfundurinn borið saman kóðann sem þú ert með við upprunalegan kóða og ef þín lausn er betri þá er hægt að setja hana saman við upprunalegan kóða með skipuninni „Merge request“.

Þegar nemendur vinna saman í hópverkefni þá er skynsamlegt að klóna „Git clone“ geymsluna yfir á tölvur þátttakenda þannig að allir hafa sitt eintak af verkefninu. Til að nemendur geti unnið saman í einni geymslu þá verður stofnandi geymslunnar að veita aðgang að henni. Síðan geta allir uppfært og sent efni í sömu geymslu á GitHub.

Í allri hópverkavinnu á tölvubraut á að nota GIT útgáfustjórnun og vakta verkefnin á meðan unnið er í þeim. Þegar unnið er í hópverkefnum á að byrja á því að bera saman og ná í síðustu útgáfu verksins á GitHub $ git pull. síðan á að skrá vinnuferlið reglulega í umsjónarkerfið og alltaf uppfæra verkefnið á GitHub í lok vinnudags $ git push

Til að hópverkefni gangi vel þarf að skipuleggja allt vinnuferlið, það er hægt að gera með Github verkstjórn “(project) . Sjá nánar hér.

Sögukorn