Add-Commit-Push workflow
Add: lisab muudatused staged olekusse. Staged olekus olevad muudatused on valmis commit-imiseks
Commit: jäädvustab projekti hetkeseisu mingis kindlas harus. See tähendab, et kõik staged olekus olevad muudatused salvestatakse mingis projekti faasis ning need on seotud konkreetse commit-i sõnumiga
Push: kui oled teinud commit-i oma kohalikku repositooriumisse, kasuta git push-i,, et edastada oma commit remote repositooriumisse. See tähendab, et sinu tehtud muudatused saadetakse GitLabi, kus neid saavad ka teised tiimiliikmed näha
NB!
Enne uue haru tegemist on alati mõistlik minna main harusse ning teha git pull, et uuendused repost alla tõmmata. PyCharmis luuakse uus haru selle haru põhjal, milles sa uue loomise hetkel oled. Kui lood uue haru sellisest harust, mis pole merge’itud, siis on seal muudatused vanast harust ning hiljem tekivad suure tõenäosusega merge’imisel konfliktid.
Kui hakkad töötama enda harus, siis on hea mõte iga kord peale töö lõpetamist commit-ida ja push-ida muudatused projekti reposse. Sellisel juhul ei lähe muudatused kaduma ka siis, kui nt arvuti läheb katki vms. Kui pushid muudatused enda harusse, ei mõjuta see projekti mitte kuidagi enne, kui haru pole merge’itud maini.
Korrektsed commit sõnumid
Mis on commit sõnum ja miks see on oluline?
Commit sõnum on lühike kirjeldus, mis selgitab, mida konkreetne commit muudab või parandab.
Hästi kirjutatud commit sõnumid teevad koodi ajaloo jälgimise lihtsamaks ja võimaldavad kiiresti aru saada, millised muudatused on tehtud ja miks.
Selged commit sõnumid on eriti olulised suurtes projektides, kus mitmed arendajad töötavad koos.
Kuidas kirjutada head commit sõnumit?
Ole konkreetne: Kirjeldage täpselt, mida commit teeb. Näiteks: "Paranda logimisvormi kujundus".
Kasuta käskivat kõneviisi: Sõnum peaks olema lühike ja otsekohene, nagu "Lisa", "Paranda", "Eemalda". Näiteks: "Lisa uus kasutaja autentimise funktsioon".
Esimene sõna suure algustähega: Alusta sõnumit suure algustähega, nagu "Parandatud" või "Lisatud".
Ära lõpeta punktiga: Commit sõnumid on tavaliselt lühikesed ja punkt pole vajalik.
Commit sõnumi struktuur: - Pealkiri (50 tähemärki või vähem): Lühike ülevaade commit'i sisust. - Kere (valikuline): Täiendav selgitus muudatustest, mis võib sisaldada detaile ja konteksti, eriti kui commit on keeruline või mõjutab mitmeid faile.
Commit sõnumi kirjutamine PyCharmi graafilise liidese kaudu:
Kui olete muudatused teinud ja valmis commit'ima, paremklõpsake projekti või failide kaustal ja valige Git > Commit....
Avaneb commit'i aken, kus saate sisestada oma commit sõnumi.
Kirjutage selge ja lühike sõnum, järgides ülaltoodud reegleid.
Commit sõnumi kirjutamine terminali kaudu:
git commit -m "Parandasin sisselogimise vead"
Commit sõnumite näited:
Hea näide: "Lisa kasutaja autentimise funktsioon"
Hea näide: "Paranda API vea logimine"
Halb näide: "Muudatused" (liiga ebamäärane)
Halb näide: "Parandasin midagi" (liiga ebamäärane ja mitteinformatiivne)
Videod
Praktiline ülesanne 1: faili lisamine/muutmine, muudatuste lisamine ning üles pushimine
Eesmärk: Õppida, kuidas lisada uusi faile, muuta olemasolevaid faile ja kuidas need muudatused GitLab'i üles pushida.
Projekt, millega ülesandeid lahendada: https://gitlab.cs.ttu.ee/iti0105-2024/git-workshop
Juhised projekti kloonimiseks/forkimiseks leiad siit.
1. Juhised IDE jaoks:
Uue faili loomine:
Paremklõpsake projekti git-workshop kaustal, Project vaates.
Valige New > File.
Sisestage faili nimeks myfile.txt ja vajutage Enter.
Kirjutage faili sisse ükskõik milline tekst ja salvestage fail (Ctrl + S).
Faili lisamine Git'i jälgimisele:
Paremklõpsake loodud failil myfile.txt.
Valige Git > Add.
PyCharmis muutub faili nimi roheliseks, mis näitab, et see on lisatud Git'i jälgimisele.
Commit'i tegemine:
Avage Commit vaade.
Valige, mis muudatusi tahate commitida (Hetkel peaks seal olema ainult teie enda loodud fail) ning tehke linnuke vastavate muudatuse kõrvale.
Avaneb aken, kuhu saate sisestada commit'i sõnumi. Näiteks: "Lisatud myfile.txt".
Vajutage Commit nuppu commit'i kinnitamiseks.
Muudatuste push'imine GitLab'i:
Pärast commit'i tegemist võib ilmuda teade, mis küsib, kas soovite muudatused GitLab'i push'ida. Vajutage Push.
Kui teade ei ilmu, siis valige ülemisest menüüst Git > Push....
Kontrollige, et õiged commit'id ja failid on valitud.
Vajutage Push nuppu.
Kinnita, et muudatused jõudsid GitLab'i:
Avage oma GitLab'i repositoorium veebibrauseris.
Kontrollige, et myfile.txt on edukalt üles laetud ja sisaldab teie lisatud teksti.
2. Juhised terminali jaoks:
Uue faili loomine:
Loo uus fail nimega myfile.txt käsuga:
touch myfile.txt
Või Windowsis:
type nul > myfile.txt
Ava fail tekstiredaktoris (näiteks nano, vim või mis iganes tekstiredaktor sulle sobib) ja lisa sinna soovitud tekst:
nano myfile.txt
Faili lisamine Git'i jälgimisele:
Lisa fail myfile.txt Git'i jälgimisele:
git add myfile.txt
Commit'i tegemine:
Tee commit oma muudatustega:
git commit -m "Lisasin myfile.txt"
Muudatuste push'imine GitLab'i:
Push'i oma commit'id GitLab'i:
git push origin main
Kui teie põhiharu nimi on master, siis asenda main sõnaga master.
Kinnita, et muudatused jõudsid GitLab'i:
Ava oma GitLab'i repositoorium veebibrauseris.
Kontrolli, et myfile.txt on edukalt üles laetud ja sisaldab sinu lisatud teksti.
Praktiline ülesanne 2: Uue branchi tegemine ning branchide vahele merge'imine
Eesmärk: Õppida, kuidas luua uusi harusid (branches) ja neid omavahel ühendada (merge) kasutades PyCharmi graafilist liidest või terminali.
Projekt, millega ülesandeid lahendada: https://gitlab.cs.ttu.ee/iti0105-2024/git-workshop
1. Juhised IDE jaoks:
Uue branchi loomine:
Avage PyCharmis oma projekt.
Vali alumises vasakus nurgas asuv Git haru (edaspidi branch) valiku menüü. See kuvab praegu aktiivse haru nime (näiteks main).
Klõpsa + nupul, et lisada uus branch.
Sisestage uue haru nimi, näiteks feature-branch, ja vajutage OK.
PyCharm vahetab automaatselt äsja loodud harule, kui Checkout branch kastikeses on linnuke.
Muudatuste tegemine uues harus:
Tee soovitud muudatused oma projektis (näiteks muuda faili myfile.txt).
Salvesta tehtud muudatused (Ctrl + S).
Muudatuste commit'imine:
Paremklõpsake muudetud failil ja valige Git > Commit....
Sisestage commit'i sõnum (näiteks "Täiendatud myfile.txt feature-branch'is").
Kontrollige, et kõik vajalikud failid on valitud.
Vajutage Commit nuppu.
Tagasi põhiharule (main) vahetamine:
Jällegi, alumises vasakus nurgas klõpsake Git branchide menüü peale.
Tehke paremklõps main branchile ning vajutage Checkout.
Harude ühendamine (merge):
Kui olete main harul, tehke paremklõps feature-branch branchil ning valige Merge 'feature-branch' into 'main'
PyCharm ühendab muudatused ja näitab, kas see toimus edukalt.
Pärast edukat merge'i võite oma lisaharu feature-branch kustutada.
Commit'ide push'imine GitLab'i:
Pärast ühendamist (merge) vajutage ülemises menüüs Git > Push....
Kontrollige, et kõik commit'id ja failid on valitud.
Vajutage Push nuppu, et laadida ühendatud muudatused GitLab'i üles.
Kinnita GitLab'is:
Avage oma GitLab'i repositoorium veebibrauseris.
Veenduge, et muudatused, mis tehti feature-branch harus, on nüüd main harus ja üles laetud GitLab'i.
2. Juhised terminali jaoks:
Uue branchi loomine:
Loo uus branch nimega feature-branch ja vaheta sellele:
git checkout -b feature-branch
Muudatuste tegemine uues harus:
Tee soovitud muudatused oma projektis (näiteks muuda faili myfile.txt):
nano myfile.txt
Tee muudatused, salvesta ja välju.
Muudatuste lisamine ja commit'imine:
Lisa muudatused Git'i:
git add myfile.txt
Tee commit:
git commit -m "Täiendatud myfile.txt feature-branch'is"
Tagasi põhiharule (main) vahetamine:
Vaheta tagasi main harule:
git checkout main
Harude ühendamine (merge):
Ühenda feature-branch põhiharuga:
git merge feature-branch
Commit'ide push'imine GitLab'i:
Push'i uuendatud main haru GitLab'i:
git push origin main
Kinnita GitLab'is:
Ava oma GitLab'i repositoorium veebibrauseris.
Veendu, et muudatused feature-branch harus on nüüd main harus ja üles laetud GitLab'i.