From 36464d4d418ed22faba6c2717105ab4fcf1239f7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?B=C3=A1lint=20R=C3=A9thelyi?= <rethelyibalint@gmail.com> Date: Sun, 28 Mar 2021 12:44:06 +0200 Subject: [PATCH] gyakorlat --- guide/gyakorlat/1_segedlet.md | 132 ++++++++++++++++++++++++++++++++++ guide/gyakorlat/img/1.png | Bin 0 -> 14545 bytes 2 files changed, 132 insertions(+) create mode 100644 guide/gyakorlat/1_segedlet.md create mode 100644 guide/gyakorlat/img/1.png diff --git a/guide/gyakorlat/1_segedlet.md b/guide/gyakorlat/1_segedlet.md new file mode 100644 index 0000000..2280e7e --- /dev/null +++ b/guide/gyakorlat/1_segedlet.md @@ -0,0 +1,132 @@ +# SegĂŠdlet + +## 0. GitSCH + +MutassĂĄtok meg neki a [GitSCH](https://git.sch.bme.hu/)t. NĂŠmĂĄ', ez olyan mint a [GitLab](https://gitlab.com/)! + +### Dolgok felfedezĂŠse + +ElĹszĂśr kattintsanak a jobb felsĹ sarokban a profiljukra, ĂŠs nĂŠzzĂŠk meg miket lĂĄtnak ott. + +<div style="text-align:center"><img src="guide/gyakorlat/img/1.png" alt="Jobb felsĹ sarok izĂŠ" /></div> + +#### Profil + +Ărdemes nekik megmutatnotok a sajĂĄt profilotokon, hogy rĂĄkattintotok a felhasznĂĄlĂłnevetekre, ĂŠs behozza, mennyire voltatok aktĂvak az elmĂşlt idĹben git szerint, szemĂŠlyes projekteket, etc... nekik ez nem biztos hogy annyira szĂŠp lesz, hiszen valĂłszĂnĹąleg nem hasznĂĄltĂĄk mĂŠg. + +#### StĂĄtusz + +0 perces mĹąvelet, de tĂśk szĂłrakoztatĂł, ĂĄllĂttatsatok be velĂźk stĂĄtuszt. MutassĂĄtok meg, hogy emojikat is be lehet ĂĄllĂtani, etc... Legyenek kicsit vidĂĄmak tĹle! + +#### BeĂĄllĂtĂĄsok + +Az edit profile ĂŠs a preferences-t is megmutathatjĂĄtok nekik, DE ne ezek beĂĄllĂtĂĄsĂĄval hĂşzzĂĄtok el az idĹtĂśket. + +Esetleg a tĂŠmĂĄt beĂĄllĂttathatjĂĄtok velĂźk, az nem sok idĹ ĂŠs nem fĂĄj, cserĂŠbe kĂŠnyelmes. + +### SSH kulcs hozzĂĄadĂĄsa a profilhoz + +Ami fontos, legalĂĄbbis kĂŠnyelmes, de nagyon, adjanak hozzĂĄ egy ssh-kulcsot a profiljukhoz. Ezt a `preferences/SSH Keys` alatt talĂĄljĂĄk meg. +Akinek nincs meg teljesen az SSH, ĂŠs az SSH kulcs fogalma, azt irĂĄnyĂtĂĄstok ĂĄt a [linuxos elĹadĂĄs](http://home.sch.bme.hu/~mikewashere/linux/#/) ide [passzolĂł fejezetĂŠhez](http://home.sch.bme.hu/~mikewashere/linux/#/m%C3%A1sodik%20vide%C3%B3#t%C3%A1voli-hozz%C3%A1f%C3%A9r%C3%A9s-ssh), illetve mesĂŠljĂŠtek el nekik rĂśviden mi is ez, (hogyan mĹąkĂśdik) hogyan kell hasznĂĄlni. + +## 1. Ăşj repĂł + +KĂŠrjetek meg valakit (NE TI LEGYETEK!), hogy hozzon lĂŠtre egy Ăşj projektet. Ezen vezessĂŠtek vĂŠgig a csapatot, jĂł lenne, ha screensharingel menne vĂŠgig, a tĂśbbiek is lĂĄssĂĄk. + +### LĂŠpĂŠsek + +Ennek a lĂŠpĂŠsei: + - nagy kĂŠk gomb (new project) nĂŠvvel + - bal felsĹ opciĂł (create blank project) + - tĂśltsĂŠtek ki a field-eket + - projekt nĂŠv lehet bĂĄrmit, lehet benne ĂŠkezet, szĂłkĂśz, etc... + - figyeljĂŠk meg, hogy `project slug` hogyan vĂĄltozik a beĂrt nĂŠv hatĂĄsĂĄra + - mondjĂĄtok el, hogy a `project slug`-ot is mĂłdosĂthatjĂĄk mĂŠg ilyenkor (kĂŠsĹbb mĂĄr asszem nem lehet, vagy naaaagyon fĂĄjdalmas) + - mesĂŠljĂŠtek el a lĂĄthatĂłsĂĄg fontossĂĄgĂĄt + - private: nem lĂĄtja mĂĄs, csak te, meg akiket meghĂvsz, hogy lĂĄssĂĄk (ĂGY hozzĂĄk lĂŠtre elĹszĂśr, kĂŠsĹbb majd fogjuk ĂĄllĂtani!) + - internal: sch domainen belĂźl (akinek van hozzĂĄfĂŠrĂŠse a GitSCH-hoz) mindenki lĂĄtja + - public: mindenki lĂĄtja, ĂzsĂŠb nĂŠni is RomĂĄniĂĄbĂłl + - az `Initialize repository with a README`-t tanuljĂĄk meg, hogy kĂŠnyelmes nem bekapcsolni, ekkor a Git* segĂt a lĂŠtrejĂśtt projek lokĂĄlis bekonfigurĂĄlĂĄsĂĄban (egĂŠsz hasznos, mi?) + - hozzĂĄtok lĂŠtre a projektet + +### Tagok hozzĂĄadĂĄsa + +Ahhoz hogy mĂĄs is hozzĂĄfĂŠrjen a repohoz, hozzĂĄ kell adni a tĂśbbieket, hiszen private-kĂŠnt hoztuk lĂŠtre. +TegyĂźk is meg, baloldalt a sĂĄvon a Members-re kattintva kapunk egy felĂźletet, ahol ezt megtehetjĂźk. + +LĂĄthatjuk, hogy embereket, valamint csoportokat is hozzĂĄ tudunk adni. Ha valaki megkĂŠrdezi, mesĂŠlhettek a csoportokrĂłl is, vagy irĂĄnyĂtsĂĄtok hozzĂĄm. + +KĂŠrjĂŠtek meg a projekt tulajdonost, hogy vegyen fel Titeket ĂŠs engem mint owner, hogy tudjunk segĂteni ha szĂźksĂŠg lenne rĂĄ, valamint a tĂśbbieket, mint developer/maintainer, ezt mĂĄr dĂśntsĂŠk el Ĺk maguk. + +A [role-ok](https://git.sch.bme.hu/help/user/permissions)rĂłl itt olvashatnak, azĂŠrt egĂŠsz beszĂŠdes. + +## 1. KlĂłnozzĂĄs + +KlĂłnozzĂĄk le a repĂłt, ehhez segĂtsĂŠget nyĂşjt a GitLab is, valamint itt van egy leĂrĂĄs: + +``` +git clone git@git.sch.bme.hu:blintmester/projektem.git +cd projektem +touch README.md +git add README.md +git commit -m "add README" +git push -u origin master +``` + +Persze cserĂŠljĂŠtek ki a dolgokat az aktuĂĄlis projektre! + +## 2. Pythonos webszerver + +KĂŠszĂtsetek el kĂśzĂśsen egy basic pythonos webszervert. SegĂŠdletnek hasznĂĄlhatjĂĄtok LackĂł [pythonos segĂŠdletĂŠt](https://home.sch.bme.hu/~rlacko/python3/#/guide/10_exercise#2-%C3%ADrj%C3%A1tok-meg-a-saj%C3%A1t-hanyadikh%C3%A9tvan-apitokat). + +Persze ne lemĂĄsoljĂĄtok, hanem hasznĂĄljĂĄtok fel okosan! + +Itt egy mintamegoldĂĄs: + +```python +import flask + +app = flask.Flask(__name__) + +app.config["DEBUG"] = True + +@app.route('/', methods=['GET']) +def home(): + return """ + <html> + <head> + <meta charset="utf-8" /> + <title>Gites meme</title> + </head> + <body> + <h1>Hello Git</h1> + <p>Ez egy basic oldal</p> + </body> + </html> + """ +app.run() +``` + +Fontos, vagy venv-el, vagy lokĂĄlisan tegyĂŠk fel a flask-et, hogy tudjĂĄk hasznĂĄlni. + +KiprĂłbĂĄlni a `python3 git.py`-al tudjĂĄk, megnĂŠzni az eredmĂŠnyt pedig a `http://localhost:5000/`. + +## 3. branch-ek + +Hozzanak lĂŠtre sajĂĄt branch-eket. Ezt a [videĂł](https://youtu.be/gU0yjbZR8lY)ban ĂŠs a [jegyzet ](https://home.sch.bme.hu/~blintmester/git)ben is olvashatjĂĄk, hogy kell. + +```shell-session +$ git checkout -b <username vagy amit akartok> +``` + +### Feladat + +Mindenki kĂŠszĂtsen egy nagyon egyszerĹą html-t a sajĂĄt branch-ĂŠn, commitoljĂĄk, ĂŠs a legvĂŠgĂŠn merge-elhetitek. + +## 4. HĂĄzi feladat + +### Alap + + + +### \ No newline at end of file diff --git a/guide/gyakorlat/img/1.png b/guide/gyakorlat/img/1.png new file mode 100644 index 0000000000000000000000000000000000000000..4b5c0156306e874ea7938a5c08087ce791ec493a GIT binary patch literal 14545 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 literal 0 HcmV?d00001 -- GitLab