[QGHG-it-dev-list] Uputstva za git i prvi zadatak za sve

Nenad Korolija nenadko at gmail.com
Fri Feb 11 06:37:12 CET 2022


Baš taj race condition je problem. Štaviše, nakon (7) je kasno za
dohvatanje novog (6), bez da se sklanjaju izmene iz (7), jer bi sa
forsiranim (6) bilo izgubljeno (7).

Ja sam se u startu zaglavljivao, pa ako se još nekome desi, uvek može od
nule da radi (3)+ u drugom direktorijumu, integrišući svoje izmene iz
starog direktorijuma. Alternativno+bolje, ako vas ne zanima vaše (7), ili
je trivijalno, ili imate drugde sačuvane izmene, sa git stash možete da
zanemarite vaše izmene iz (7) i nastavite sa (6)+, ne gubeći ovaj put mnogo
vremena na (7).

Pozdrav,
Nenad

On Fri, Feb 11, 2022 at 04:47 Marko Vojinovic <vmarko at ipb.ac.rs> wrote:

>
> Nenad je skroz u pravu --- i mene je to brinulo dok sam sastavljao
> uputstvo. Naime, moze da se dogodi da dvoje ljudi u isto vreme rade nesto
> sa istim fajlom (koji su dobili u koraku (6)), pa ko prvi uradi push u
> koraku (11) napravi problem ovom drugom, jer promeni fajl na potencijalno
> nekompatibilan nacin, i onda drugi covek vise ne moze da uradi svoj push,
> nego mora ponovo da uradi (6) i zatim ponovo edituje novu verziju fajla.
> Tipican race condition. :-)
>
> Ponavljanje koraka (6) i proveravanje da li su svi relevantni fajlovi jos
> uvek isti je odlican nacin da se zaobidje problem, bar dok je kod relativno
> mali. Postoji i sistematsko resenje (branch-evi), ali to cemo kasnije da
> ucimo, kad se malo naviknemo na git i ako kod dostigne velicinu da nije
> moguce zaobici problem Nenadovom metodom. ;-)
>
> :-)
> Marko
>
>
> Dr. Marko Vojinovic
> Group for Gravitation, Particles and Fields
> Institute of Physics
> University of Belgrade
> ======================
> home page: www.markovojinovic.com
> e-mail:    vmarko at ipb.ac.rs
>
>
>
> On Fri, 11 Feb 2022, Nenad Korolija wrote:
>
> > Zdravo svima,
> >
> > Ovo je detaljno objašnjeno, a sažeto na minimum.
> > Za početak bi valjalo da svi ovako uradite iz git komandne linije na
> bilo kom operativnom sistemu.
> >
> > Kasnije, da ne bi prebrzo ulazili u koštac sa rešavanjem konflikata i
> git grananjem, trudite se da (7) minimalno traje. Drugim rečima, možete
> nakon (6) da kopirate fajlove u drugi
> > direktorijum, tu uradite (7), vratite se u stari/glavni direktorijum
> koji git jedino vidi, ponovite (6), integrišete u tako dobijeni novi kod to
> što ste pravili, i nastavite sa
> > (8)-(11).
> >
> > Pozdrav,
> > Nenad
> >
> > On Thu, Feb 10, 2022 at 23:38 Marko Vojinovic <vmarko at ipb.ac.rs> wrote:
> >
> >       Pozdrav svima,
> >
> >       Evo najjednostavnijeg sazvakanog uputstva kako da koristite git.
> Naravno, git je mnogo mocniji od ovoga i ima niz korisnih mogucnosti (npr.
> branch-evi), ali to mozete
> >       kasnije da ucite po potrebi, a osnovna, bare-bones upotreba za
> prvi kontakt sa git-om i GitHub-om ide otprilike ovako:
> >
> >       (1) Instalirajte git na vas racunar. Uputstva za ovo zavise od
> toga da li koristite Windows, Linux, Mac, ili nesto cetvrto, pa je najbolje
> da odete na Google i potrazite
> >       uputstva za instalaciju git-a za vas operativni sistem. U nastavku
> slede uputstva u sintaksi koja rade pod Linux-om, a za ostale sisteme je
> verovatno isto (ili makar
> >       slicno).
> >
> >       (2) Ulogujte se na GitHub i kreirajte jedan token, po sledecem
> uputstvu:
> >
> >
> https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token
> >
> >       Kreirani token copy-paste-ujte i snimite u neki fajl, jer cete ga
> rutinski copy-paste-ovati nize u koraku (11). Datum isticanja token-a
> stavite kako hocete, u zavisnosti od
> >       toga kad planirate da ga menjate. Postoji i opcija "unlimited"
> trajanja, ako vam odgovara.
> >
> >       (3) Napravite direktorijum na racunaru gde hocete da radite na
> kodu i udjete u njega. Zatim konfigurisete git da saradjuje sa github-om
> (zamenite vase podatke za logovanje
> >       na github):
> >
> >          git config --global user.name "Marko Vojinovic"
> >          git config --global user.email vmarko at ipb.ac.rs
> >
> >       (4) Klonirate kod sa github-a u lokalni direktorijum:
> >
> >          git clone https://github.com/vvmarko/triangulator
> >
> >       (5) Kloniranje vam napravi pod-direktorijum koji je download-ovan,
> pa udjete u njega:
> >
> >          cd triangulator
> >
> >       (6) Svaki put kad nesto pocinjete da radite, prvo povucete
> najsveziju verziju koda sa github-a:
> >
> >          git pull
> >
> >       (7) Radite zadatke --- editujete postojece fajlove, kreirate nove,
> itd.
> >
> >       (8) Kad ste zavrsili zadatak, proverite status sta je sve
> izmenjeno:
> >
> >          git status
> >
> >       (9) Ako ste zadovoljni sa novim kodom, navedete koje sve fajlove
> ste menjali, da ih upload-ujete na github:
> >
> >          git add main.cpp moj-novi-fajl.cpp zadatak-4.cpp
> >
> >       (10) Pripremite sve u jedan "paket" za slanje, sa kratkim opisom:
> >
> >          git commit -m "Resenje cetvrtog zadatka i neke sitne popravke
> mog novog fajla"
> >
> >       (11) Upload-ujete paket na github:
> >
> >          git push
> >
> >       Kada vas pita za username i password, dajte mu vas username sa
> GitHub-a, a umesto password-a copy-paste-ujte onaj token iz koraka (2).
> >
> >
> >       To je to. Za svaki naredni zadatak, ponavljate korake (5)-(11).
> Korake (1)-(4) je dovoljno da uradite samo jednom.
> >
> >       Kao prvi zadatak, testirajte ovo uputstvo tako sto cete u koraku
> (7) dodati svoje ime i prezime na spisak u fajl "Development-team.txt", i
> upload-ovati ga na GitHub.
> >       Konkretno, korak (9) treba da glasi:
> >
> >          git add Development-team.txt
> >
> >       Ako imate bilo kakvih problema sa ovim postupkom, javite.
> >
> >       :-)
> >       Marko
> >
> >
> >       Dr. Marko Vojinovic
> >       Group for Gravitation, Particles and Fields
> >       Institute of Physics
> >       University of Belgrade
> >       ======================
> >       home page: www.markovojinovic.com
> >       e-mail:    vmarko at ipb.ac.rs
> >
> >
> >       --
> >       QGHG-it-dev-list mailing list
> >       QGHG-it-dev-list at ipb.ac.rs
> >       http://mail.ipb.ac.rs/mailman/listinfo/qghg-it-dev-list
> >
> >
> >--
> QGHG-it-dev-list mailing list
> QGHG-it-dev-list at ipb.ac.rs
> http://mail.ipb.ac.rs/mailman/listinfo/qghg-it-dev-list
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.ipb.ac.rs/pipermail/qghg-it-dev-list/attachments/20220211/4119c847/attachment-0001.htm>


More information about the QGHG-it-dev-list mailing list