From 07bf794a80dd023dee14289f68b38fcf154d9939 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Rafael=20L=C3=A1szl=C3=B3?= <rlacko99@gmail.com>
Date: Fri, 9 Oct 2020 10:43:17 +0200
Subject: [PATCH] better workshop basics

---
 docs/workshop/2_basics.md | 118 +++++++++++++++++++++++---------------
 1 file changed, 72 insertions(+), 46 deletions(-)

diff --git a/docs/workshop/2_basics.md b/docs/workshop/2_basics.md
index 25d0072..387a3f4 100644
--- a/docs/workshop/2_basics.md
+++ b/docs/workshop/2_basics.md
@@ -19,7 +19,7 @@ $ git help config
 De ha csak egy gyors ĂĄttekintĂŠsre van szĂźksĂŠged:
 
 ```
-\$ git config -h
+$ git config -h
 usage: git config [<options>]
 
 Config file location
@@ -40,10 +40,10 @@ Action
 
 A Git repository egy olyan mappa, mely Git verziĂłkezelĂŠs alatt
 ĂĄll.
-PĂŠldĂĄul az a mappa, ahol van egy .git mappa, az egy git repo.
+TehĂĄt az a mappa, ahol van egy .git mappa, az egy git repo.
 
 ```
-\$ ls -al
+$ ls -al
 total 20
 drwxrwxr-x 4 rlacko rlacko 4096 okt 8 12:59 .
 drwxrwxr-x 3 rlacko rlacko 4096 okt 7 12:04 ..
@@ -63,19 +63,20 @@ $ cd projektem
 
 ```
 
-NĂŠzzĂźk meg, hogy mi a helyzet a git-el ezzel a mappĂĄban.  
+NĂŠzzĂźk meg, hogy mi a helyzet a git-el.  
 Ehhez a `git status` parancsot tudjuk hasznĂĄlni.
 Ez a parancs a jelenlegi git repo-nkrĂłl kĂŠpes
 informĂĄciĂłkat kiĂ­rni.
 
 ```
-\$ git status
+$ git status
 fatal: not a git repository (or any of the parent directories): .git
 
 ```
 
 Teljesen Ăźres a mappa, mĂŠg nincs verziĂł kontroll alatt.
-`ls -al` -el tudjuk is ellenőrizni.
+`ls -al` -el tudjuk is ellenőrizni, hogy nincsen `.git`
+mappa.
 
 TegyĂźk verziĂłkontroll alĂĄ a `git init` paranccsal.
 Ez beĂĄllĂ­tja nekĂźnk a `master` branchet ĂŠs mĂĄs alap dolgokat.
@@ -86,7 +87,7 @@ egy fa ĂĄga.
 <div style="text-align:center"><img src="workshop/img/basic-branching.png" alt="Git branch" /></div>
 
 ```
-\$ git init .
+$ git init .
 Initialized empty Git repository in .../projektem/.git/
 
 ```
@@ -94,7 +95,7 @@ Initialized empty Git repository in .../projektem/.git/
 Ha megnĂŠzzĂźk, mostmĂĄr van egy .git mappĂĄnk
 
 ```
-\$ ls -al
+$ ls -al
 total 12
 drwxrwxr-x 3 rlacko rlacko 4096 okt 8 16:52 .
 drwxrwxr-x 12 rlacko rlacko 4096 okt 8 16:49 ..
@@ -131,10 +132,11 @@ Erre egyik megoldás más verziókezelőknél, hogy optimalizálnak
 A Git ezt Ăşgy oldja meg, hogy egy mentĂŠs az Ăśsszes fĂĄjlt
 egy az egybe lemĂĄsolja.  
 PĂŠldĂĄul egyik mentĂŠs alkalmĂĄval feltĂśltĂśk egy 1gb-os videĂłt,
-majd a következő mentéskor törlöm, akkor az a videó
-benne marad a git repo-ban.
-Persze utólag tudunk olyat, hogy kitöröljük az adott mentésből,
-de ez nem ajĂĄnlott hasznĂĄlata a Git-nek.
+majd a következő mentéskor pár bitet átírok, akkor már
+2gb-nyi videĂł lesz a repĂłban ĂŠs ha utĂĄna egy mĂĄsik mentĂŠsel
+ki is tĂśrĂśljĂźk, az attĂłl mĂŠg megmarad.
+Persze utĂłlag tudunk olyat, hogy visszmegyĂźnk ĂŠs kitĂśrĂśljĂźk
+az adott mentésből, de ez nem ajánlott használata a Git-nek.
 
 OkĂŠ, tehĂĄt pĂŠldĂĄul mappĂĄkba bemĂĄsolja a mentĂŠseinket valamilyen
 mĂłdon, de mĂŠgis hova?
@@ -154,12 +156,11 @@ $ tree .git/objects/
 ```
 
 MĂŠgis mik ezek?  
-A Git tĂśmĂśrĂ­tve ĂŠs titkosĂ­tottan hashelve tĂĄrolja a fĂĄjlokat.
+A Git tĂśmĂśrĂ­tve ĂŠs hashelve tĂĄrolja a fĂĄjlokat.
 A hashelĂŠsnek annyi a lĂŠnyege, hogy a fĂĄjl teljes tartalmĂĄn
 ĂĄtfuttatunk egy algoritmust, mely ezutĂĄn kikĂśp egy 0-9a-z
 szĂśveget ĂŠs ha akĂĄr 1 bit-et is vĂĄltoztatunk egy fĂĄjlon, akkor
-más lesz a hash-e, sőt a titkosítás miatt még feltörni is
-lehetetlen.  
+mĂĄs lesz a hash-e.  
 TehĂĄt ha valaki elcommitol valamit, akkor azt mĂĄr mĂĄs nem tudja
 megvĂĄltoztatni anĂŠlkĂźl, hogy vĂĄltozna a hash.
 Így tudjuk biztosítani a teljes konzisztenciát az elosztott
@@ -168,12 +169,23 @@ repo-k kĂśzĂśtt.
 Hash-t lĂĄthatunk pĂŠldĂĄul a mentĂŠspontjainkon, fĂĄjljainkon, stb.
 
 EnnĂŠl jobban nem megyek bele a tĂŠmĂĄba, de ĂŠrdekes olvasmĂĄny.
-A lĂŠnyeg, hogy mindenhol ott vannak a hash-ek, ĂŠs erre mindjĂĄrt
-lĂĄtunk pĂŠldĂĄt.
 
 #### VĂĄltoztatĂĄsok mentĂŠse
 
-Na de hogyan kĂŠszĂ­tĂźnk ilyen mentĂŠseket?
+Hogyan nĂŠz ki egy mentĂŠs?
+
+```
+commit c45abc3d64c7840b4088b77d5a60d02198a78854
+Author: Rafael LĂĄszlĂł <rlacko99 [AT] gmail.com>
+Date:   Thu Oct 8 17:19:28 2020 +0200
+
+    KĂŠszĂ­tettem egy gyĂźmĂślcskosarat
+```
+
+Van egy commit-nak `commit hash`-e, `készítője`,
+`lĂŠtrehozĂĄsi dĂĄtumja`, ĂŠs `commit Ăźzenete`
+
+Na de hogyan kĂŠszĂ­tĂźnk egy mentĂŠspontot?
 
 A fájljainknak különböző állapotai létezhetnek egy
 repo-ban.
@@ -187,23 +199,22 @@ repo-ban.
 
 NĂŠzzĂźk meg ezen az ĂĄbrĂĄn ĂŠs egy pĂŠlda projekten keresztĂźl:
 
-<div style="text-align:center"><img src="workshop/img/git_lifecycle.png" alt="Local Version Control Systems" /></div>
+<div style="text-align:center"><img src="workshop/img/git_lifecycle.png" alt="Git Life cycle" /></div>
 
-Mi a jelenlegi helyzet a repo-ban, miutĂĄn inicializĂĄltuk?
+Mi a jelenlegi helyzet a frissen inicializĂĄlt repo-ban?
 
 ```
-\$ git status
+$ git status
 On branch master
 No commits yet
 nothing to commit (create/copy files and use "git add" to track)
 ```
 
-LĂĄthatjuk, hogy mĂŠg nincsenek mentĂŠspontjaink ĂŠs nincs mit
+LĂĄthatjuk, hogy mĂŠg nincsenek mentĂŠspontjaink, nincs mit
 elmentenĂźnk ĂŠs egyben a git prĂłbĂĄl segĂ­teni, hogy hogyan
 tudunk stagelni valamit.
 Ezt tĂśbb helyen is megfigyelhetjĂźk a git-ben.
-PrĂłbĂĄl segĂ­teni ahol csak tud, minĂŠl kĂŠnyelmesebbĂŠ tĂŠve
-a munkĂĄnkat.
+PrĂłbĂĄl segĂ­teni ahol csak tud.
 
 VegyĂźnk fel egy Ăşj fĂĄjlt.
 
@@ -214,13 +225,13 @@ echo 'alma' > gyumolcskosar
 _Itt az `echo` egy olyan parancs volt, mely kiĂ­rta nekĂźnk a
 terminĂĄlra azt, hogy "alma", de ĂĄtirĂĄnyĂ­tottuk egy fĂĄjlba
 a `>` operĂĄtorral ĂŠs mivel nem lĂŠtezett a fĂĄjl, azt lĂŠtre is
-hozta._
+hozta._ - Linux magic #01
 
 Újra megvizsgálva a status-t, látni fogjuk, hogy megjelent, de
 mĂŠg nincs verziĂłkontroll alatt.
 
 ```
-\$ git status
+$ git status
 ...
 Untracked files:
 (use "git add <file>..." to include in what will be committed)
@@ -233,23 +244,23 @@ Ahhoz, hogy git alĂĄ helyezzĂźk, a `git add <fĂĄjl>` parancsot
 fogjuk kiadni.
 _Ezek a parancsok mind kĂŠpesek rĂĄ, hogy
 Unix-os mĂłdon tĂśbb fĂĄjlra is kiadhatĂłak legyenek.
-PĂŠldĂĄul a `<fĂĄjl>` lehet `*.jpg`amivel minden .jpg fĂĄjlt kijelĂślĂźnk a jelenlegi mappĂĄban"_
+PĂŠldĂĄul a `<fĂĄjl>` lehet `*.jpg`amivel minden .jpg fĂĄjlt kijelĂślĂźnk a jelenlegi mappĂĄban"_ - Linux magic #02
 
 ```
-\$ git add gyumolcskosar
+$ git add gyumolcskosar
 ```
 
 EzutĂĄn megjelenik, mint Ăşj fĂĄjl a git adatbĂĄzisĂĄban.
 
 ```
-\$ git status
+$ git status
 ...
 Changes to be committed:
 (use "git rm --cached <file>..." to unstage)
 new file: gyumolcskosar
 ```
 
-A fĂĄjlunk ĂĄtkerĂźlt staged mĂłdba ĂŠs ezt akĂĄr mostmĂĄr el is
+A fĂĄjlunk ĂĄtkerĂźlt staged mĂłdba ĂŠs ezt akĂĄr el is
 tudjuk menteni.
 A mentĂŠshez a `git commit` parancsot tudjuk
 hasznĂĄlni.
@@ -276,7 +287,7 @@ A # -el kezdődő sorok kommentek, ezek nem fognak a commit
 majd mentsük el a fájlt és zárjuk be a szövegszerkesztőt.
 
 ```
-\$ git commit
+$ git commit
 [master (root-commit) c45abc3] KĂŠszĂ­tettem egy gyĂźmĂślcskosarat
 1 file changed, 1 insertion(+)
 create mode 100644 gyumolcskosar
@@ -291,7 +302,7 @@ TovĂĄbbĂĄ megjelent pĂĄr tovĂĄbbi hasznos informĂĄciĂł is.
 IsmĂŠtelten nĂŠzzĂźk meg mi a helyzet a reponkban:
 
 ```
-\$ git status
+$ git status
 On branch master
 nothing to commit, working tree clean
 ```
@@ -327,7 +338,7 @@ parancsnak ĂĄttudunk adni Ăşgynevezett kapcsolĂłkat.
 PĂŠldĂĄul `git commit -m <message>`.
 Ez annyit spórol meg nekünk, hogy nem kell szövegszerkesztőt
 megnyitnia a git-nek mikor Ăşj commit-ot kĂŠszĂ­tĂźnk,
-hanem ĂĄtraktuk a parancsot olyan mĂłdba,
+hanem ĂĄtrakjuk a parancsot olyan mĂłdba,
 hogy vĂĄrjon egy szĂśveget, mint mentĂŠshez kapcsolĂłdĂł Ăźzenet.
 Általåban logikusak az egy betŹs rÜvidítÊsek:  
 `-m: message, -a: all`, de tudunk hosszabb verziĂłkat is
@@ -356,19 +367,29 @@ mit Ă­r ki a `git status -s`.
 
 Mi van akkor, ha valami fĂĄjlt nem szeretnĂŠnk verziĂłkontroll
 alĂĄ tenni? Gondolok pĂŠldĂĄul a build-ek mappĂĄira vagy
-adott EszkĂśz ĂĄltal generĂĄlt fĂĄjlokra?
+egy IDE ĂĄltal generĂĄlt fĂĄjlokra.
 
 Hozzunk lĂŠtre egy `.gitignore` fĂĄjlt ĂŠs egy `jegyzeteim.txt`
 fĂĄjlt.
 EzutĂĄn adjuk ki a `git status` parancsot.
-LĂĄthatjuk, hogy a `jegyzeteim` fĂĄjl nem jelent meg, tehĂĄt
-ignorĂĄljuk a fĂĄjlt. Stage-ljĂźk, majd mentsĂźk el a fĂĄjlt a
+LĂĄthatjuk, hogy a `jegyzeteim` fĂĄjl megjelent.
+
+Most Ă­rjuk be a fĂĄjl nevĂŠt a `.gitignore`-ba.
+
+```.gitignore
+jegyzeteim.txt
+```
+
+Ezt követően adjuk ki újra a `git status` parancsot.  
+Oh, eltĂźnt a fĂĄjlunk! Pont ezt akartuk, mostmĂĄr nem fogja
+figyelni a git ha ilyen fĂĄjlt kĂŠszĂ­tĂźnk.
+MostmĂĄr csak stageljĂźk ĂŠs mentsĂźk el az Ăşj fĂĄjlunk.  
 `git add .`, `git commit -m "jegyzeteim ignorĂĄlĂĄsa"`
 
 #### FĂĄjlok mozgatĂĄsa
 
 A git semmi adatot nem tĂĄrol vĂĄltozĂĄsokrĂłl, csak
-mentéseket készít, ahogy említettem az előző részben.
+mentĂŠseket kĂŠszĂ­t, ahogy emlĂ­tettem.
 PrĂłbĂĄljuk ki, hogy mi tĂśrtĂŠnik ha ĂĄtnevezĂźnk egy fĂĄjlt?
 
 ```
@@ -392,7 +413,7 @@ no changes added to commit (use "git add" and/or "git commit -a")
 
 LĂĄthatĂł, hogy az eredeti fĂĄjlt "tĂśrĂśltĂźk" ĂŠs egy Ăşj
 fájlt vettünk fel a repo-ba. Érdekes, mi lenne ha stagelnénk
-a vĂĄltoztatĂĄsokat?
+a vĂĄltoztatĂĄsokat `git add .` -al?
 
 ```
 $ git add .
@@ -406,7 +427,9 @@ Changes to be committed:
 Most meg mĂĄr lĂĄtszik, hogy csak ĂĄtnevezĂŠs tĂśrtĂŠnt?
 
 A Git kĂŠpes rĂĄ, hogy felismerje a fĂĄjlokat ĂŠs eldĂśntse, hogy
-ugyanaz volt a kettő, tehát átnevezés történt.
+ugyanaz volt a kettő, tehát átnevezés, mozgatás, stb. történt.
+De nem tudja kĂśvetni a fĂĄjlt, csak lĂĄtja, hogy jĂśtt egy Ăşj
+fĂĄjl ami szinte ugyanaz, mint ami tĂśrĂślve lett nemrĂŠg.
 
 #### Mentési előzmények
 
@@ -441,18 +464,21 @@ Date:   Thu Oct 8 17:19:28 2020 +0200
 
 Itt azt lĂĄthatjuk, hogy milyen mentĂŠspontjaink vannak
 ĂŠs a hozzĂĄjuk tartozĂł dolgokat, mint a commit hash vagy
-a hozzĂĄ tartozĂł Ăźzenet.
+a Ăźzenet.
 
 Picit tegyük szebbé. Adjuk ki az előző parancsot a
-`--graph --oneline` kapcsolĂłkkal.
+`--oneline` kapcsolĂłval.
 
 ```
-* 80560db (HEAD -> master) jegyzeteim ignorĂĄlĂĄsa
-* 30bf35d Hoztunk egy hordĂłt
-* b677a86 Raktam bele egy kĂśrtĂŠt
-* c45abc3 KĂŠszĂ­tettem egy gyĂźmĂślcskosarat
+80560db (HEAD -> master) jegyzeteim ignorĂĄlĂĄsa
+30bf35d Hoztunk egy hordĂłt
+b677a86 Raktam bele egy kĂśrtĂŠt
+c45abc3 KĂŠszĂ­tettem egy gyĂźmĂślcskosarat
 ```
 
-MĂĄris szebben nĂŠz ki :)
+MĂĄris csak a lĂŠnyeget lĂĄtjuk. Az is lĂĄthatĂł, hogy csak 7
+karaktert kaptunk a hashből.
+ElĂŠg csak pĂĄr karakter, hogy beazonosĂ­tsunk
+pĂŠldĂĄul egy commitot a hash-ĂŠvel.
 
 [Előző](workshop/1_installation) | [Következő](workshop/3_branch)
-- 
GitLab