Jak na GIT?

Rugo

Jak na GIT?
« kdy: 30. 06. 2017, 07:59:49 »
Poradíte někdo, jak na správu projektu s Git? Resp. kde najím nějak rozumě vysvětleno, jak se to vlastně chová? Několikrát jsem ho zkoušel, ale vždycky se to chovalo nějak "divně", jinak, než bych z popisu čekal.
Situace je zavedení repozitáře mezi asi tři lidi, projekty v C, integrace s eclipse.
Moje představa by byla jeden centrální repozitář na serveru plus u každého lokálně.
Na první pohled to vypadá jednoduše, ale nikdy mi to nijak nefungovalo, zvláště i integrací do IDE.


Re:Jak na GIT?
« Odpověď #1 kdy: 30. 06. 2017, 08:10:34 »
Poradíte někdo, jak na správu projektu s Git? Resp. kde najím nějak rozumě vysvětleno, jak se to vlastně chová? Několikrát jsem ho zkoušel, ale vždycky se to chovalo nějak "divně", jinak, než bych z popisu čekal.
Situace je zavedení repozitáře mezi asi tři lidi, projekty v C, integrace s eclipse.
Moje představa by byla jeden centrální repozitář na serveru plus u každého lokálně.
Na první pohled to vypadá jednoduše, ale nikdy mi to nijak nefungovalo, zvláště i integrací do IDE.

Zde https://knihy.nic.cz/ je ke stažení knížka ProGit, kde je vše vysvětleno. Integrace do konkrétního IDE si musíte vyřešit sami, ale git se perfektně používá i z řádky (a na funkci to nemá vliv).

Abel

Re:Jak na GIT?
« Odpověď #2 kdy: 30. 06. 2017, 08:26:48 »
Neni to nic sloziteho, nejlepe kdyz vam nekdo ukaze jak se branchuje, merguje a rebasuje. To je asi vse co vam na zacatek staci. Z IDE doporucuji SourceTree, je daleko nejlepsi. https://www.sourcetreeapp.com/ Ma jen jedinou vadu - neni linux verze. Git je nejlepe provozovat s webovym backendem typu Gihub, Bitbucket, Stash atd. Ale to je uz spise pro vetsi projekty nebo korporace.

Kiwi

Re:Jak na GIT?
« Odpověď #3 kdy: 30. 06. 2017, 08:31:34 »
Poradíte někdo, jak na správu projektu s Git? Resp. kde najím nějak rozumě vysvětleno, jak se to vlastně chová? Několikrát jsem ho zkoušel, ale vždycky se to chovalo nějak "divně", jinak, než bych z popisu čekal.
Co to znamená "divně"? :)

Trupik

Re:Jak na GIT?
« Odpověď #4 kdy: 30. 06. 2017, 08:37:23 »
Silno doporučujem na začiatku vykašľať sa na integráciu do IDE, aj na Git GUI a používať Git výlučne z príkazového riadku. IDE väčšinou implementuje len obmedzený subset príkazov, ktorý je spoločný pre rôzne verzovacie systémy. Navyše chybové hlášky IDE (a často aj Git GUI) neodovzdá ďalej správne, alebo neodovzdá vôbec. Človek sa potom diví a zlostí, prečo mu to nejde, až kým to neskúsi z CLI, kde je chybová hláška kryštálovo jasná a ak náhodou nie, tak sa dá ľahko skopírovať do googla.

A samozrejme knihu ProGIT - PDF je zadarmo a dostupné hneď, takže sa nie je na čo vyhovárať.


Re:Jak na GIT?
« Odpověď #5 kdy: 30. 06. 2017, 08:43:46 »
Několikrát jsem ho zkoušel, ale vždycky se to chovalo nějak "divně", jinak, než bych z popisu čekal.
Škoda, že nenapíšeš nějaký konkrétní příklad. Základní principy gitu jsou tak jednoduché, že pokud jsi byl něčím překvapen, tak jsi nejspíš ten základní princip špatně pochopil. Třeba kdybys napsal konkrétní příklad, stačily by dvě tři dobře mířené věty a měl bys aha-zážitek, po kterém bys tomu už úplně rozuměl :)

JmJ

  • ****
  • 328
    • Zobrazit profil
Re:Jak na GIT?
« Odpověď #6 kdy: 30. 06. 2017, 09:00:17 »
Zakladni principy gitu jsou sice jednoduche, ale jejich spravne uziti a rozhodnuti kdy co pouzit tak jednoduche rozhodne neni. Git nema na jednu situaci jen jedno reseni. Clovek musi nejen vedet co chce udelat, ale podle ruznych okolnosti se musi rozhodnout jak to chce udelat. Vysledek urcite operace sice bude stejny z pohledu zdrojoveho kodu, ale muze byt rozdilny treba z pohledu zachovane historie uprav. A toto pro zacatecnika rozhodne jednoduche neni.

Ja bych doporucil jednak nejake ctivo o tech zakladnich operacich nad git repozitarem a pak neco o "git flow" tedy o tom, jak "ridit" projekt v gitu. Ale idealni je se s nekym pobavit, kdo zodpovi konkretni otazky co a jak delat.

Na "git flow" je treba tento web https://datasift.github.io/gitflow/IntroducingGitFlow.html . Ja sam za sebe rikam, ze tohle neuvadim jako jediny spravny pristup k rizeni projektu, ale spis jako ukazku toho, jak git muze pracovat a nasmerovani jak to muze vypadat. Myslim ze treba sourceTree ma zrovna pro tenhle model primo podporu.

Byt vami, zalozil bych si nejaky pokusny repozitar na serveru a dva lokalni repozitare, ktere budou sledovat to repo na serveru a udelal si par pokusu nad nejakymi textovymi soubory. Commitovani a pushovani zmen, fetch, merge, rebase, pull, vetveni atd. Az se vam bude aspon rozumne zdat, ze vite co delate, nasadil bych to na projekt. Je to rozhodne lepsi, nez do toho jit pohlave. Z meho pohledu proste git neni tak primocary, aby "prumerny" programator hned vedel, jak s nim spravne zachazet. On totiz ani v urcitych situacich nema jedine "spravne reseni", coz pro novacka muze byt docela zlo :-(.

Martinnn


Re:Jak na GIT?
« Odpověď #8 kdy: 30. 06. 2017, 09:03:53 »
Zakladni principy gitu jsou sice jednoduche, ale jejich spravne uziti a rozhodnuti kdy co pouzit tak jednoduche rozhodne neni. Git nema na jednu situaci jen jedno reseni. Clovek musi nejen vedet co chce udelat, ale podle ruznych okolnosti se musi rozhodnout jak to chce udelat. Vysledek urcite operace sice bude stejny z pohledu zdrojoveho kodu, ale muze byt rozdilny treba z pohledu zachovane historie uprav. A toto pro zacatecnika rozhodne jednoduche neni.
To je pravda. Já jsem si tu poznámku automaticky přeložil jako "byl jsem překvapený, že ten příkaz udělal něco jiného, než jsem očekával" a nenapadla mě možnost "chtěl jsem řídit projekt, ale nevěděl, jak dosáhnout XYZ".

kimec

Re:Jak na GIT?
« Odpověď #9 kdy: 30. 06. 2017, 10:08:57 »
Poradíte někdo, jak na správu projektu s Git? Resp. kde najím nějak rozumě vysvětleno, jak se to vlastně chová? Několikrát jsem ho zkoušel, ale vždycky se to chovalo nějak "divně", jinak, než bych z popisu čekal.
Situace je zavedení repozitáře mezi asi tři lidi, projekty v C, integrace s eclipse.
Moje představa by byla jeden centrální repozitář na serveru plus u každého lokálně.
Na první pohled to vypadá jednoduše, ale nikdy mi to nijak nefungovalo, zvláště i integrací do IDE.
Uz som to tu pisal aj minule, ale dam repete.

Aby ste vedeli spravne pracovat s Gitom, musite si zapamatat a pochopit dva nasledujuce body:

  • Git si ziadne zmeny nepamata
  • Git nie je verzionovaci nastroj

Akokolvek neintuitivne to vyznieva, oba body su fakty a pravdive.

Ked zacnete s Gitom od opacneho konca, t.j. myslite si, ze je to verzionovaci nastroj a ide od rebaseovania, mergegovania, cherry pickovania a nerozumiete tymto dvom zakladnym bodom, vzdy v tom budete mat gulas.

Ked ste tieto dva body stravili, mozete si precitat Pro git book.

gll

Re:Jak na GIT?
« Odpověď #10 kdy: 30. 06. 2017, 10:33:45 »
  • Git si ziadne zmeny nepamata
  • Git nie je verzionovaci nastroj

To je zase nějaké dementní slovíčkaření?

kimec

Re:Jak na GIT?
« Odpověď #11 kdy: 30. 06. 2017, 10:36:01 »
  • Git si ziadne zmeny nepamata
  • Git nie je verzionovaci nastroj

To je zase nějaké dementní slovíčkaření?
Nie, iba implementacny detail.

gll

Re:Jak na GIT?
« Odpověď #12 kdy: 30. 06. 2017, 10:42:22 »
  • Git si ziadne zmeny nepamata
  • Git nie je verzionovaci nastroj

To je zase nějaké dementní slovíčkaření?
Nie, iba implementacny detail.

Kód: [Vybrat]
git log -p

bere historii změn odkud, když si git žádné změny nepamatuje?

Abel

Re:Jak na GIT?
« Odpověď #13 kdy: 30. 06. 2017, 10:51:39 »
  • Git si ziadne zmeny nepamata
  • Git nie je verzionovaci nastroj

Dafuq? Git je distribuovana mnozina commitu v case (timestamp), prostoru (branch) a dimenzi (uloziste). Zbytek jsou jen atributy :-)

kimec

Re:Jak na GIT?
« Odpověď #14 kdy: 30. 06. 2017, 10:55:07 »
  • Git si ziadne zmeny nepamata
  • Git nie je verzionovaci nastroj

To je zase nějaké dementní slovíčkaření?
Nie, iba implementacny detail.

Kód: [Vybrat]
git log -p

bere historii změn odkud, když si git žádné změny nepamatuje?
Sup, sup, precitat knihu, ktoru som linkoval - evidentne mate medzery.