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

Marko Vojinovic vmarko at ipb.ac.rs
Sat Feb 12 14:11:17 CET 2022


Pozdrav Dusane,

Nisam siguran da je problem koji vidis vezan za ovo, ali ti jos uvek nisi prihvatio GitHub invitation koji sam ti poslao, da budes collaborator na projektu:

    https://github.com/vvmarko/triangulator/invitations

Verovatno zbog toga GitHub odbija da primi tvoj kod. Vidi da prihvatis invitation, pa onda probaj push ponovo.

Btw, treba svi da pravite jasnu razliku izmedju git-a i GitHub-a --- prvi je skup aplikacija za version control softvera koji pravimo (instaliranih na vas racunar), a drugi je besplatan cloud service (tj. neciji websajt) na kome smo odlucili da host-ujemo nas softver. Osim slicnog imena, git i GitHub nemaju mnogo toga zajednickog. :-)

:-)
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 Sat, 12 Feb 2022, Dusan Cvijetic wrote:

> Pozdrav,
> 
> Imam problema sa psuh-om izmena na server (dodavanje imena na listu). Ispratio sam uputstvo, ali mi iskače greška: 
> 
> remote: Permission to vvmarko/triangulator.git denied to dyc0.
> fatal: unable to access 'https://github.com/vvmarko/triangulator/': The requested URL returned error: 403
> 
> Gledao sam po forumima šta bi moglo da bude, ali nisam našao jednostavno rešenje, a ne poznajem dovoljno git da bih ulazio u neke komplikovanije zahvate. Može li neko da mi pomogne da
> razrešim ovaj problem?
> 
> Pozdravi,
> Dušan
> 
> пет, 11. феб 2022. у 06:37 Nenad Korolija <nenadko at gmail.com> је написао/ла:
>       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
> 
> --
> 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
> 
> 
>


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