Registrace nového uživatele     Návod     Kluby     Archív  Lopuchu     Lopuch.cz  

Modrá je dobrá
zelená je lepší

Lopuch.cz

Jméno:
Heslo:
Podpora LCD:
 
Klub Programování [ŽP: neomezená] (kategorie Programování) moderuje tvx.
Archiv
  Nastavení klubu     Nastavení práv     Homepage     Anketa     Přítomní     Oblíbené     Lopuch     Kategorie  
autor: 
text: 
vyplnit a 
Help
 Titulek, text příspěvku  
Opište pozpátku následující text bez prostředního znaku: sbzazql
[ 857 ] <Novější  <<<Nejnovější  Nejstarší>>>  Starší>  
al3x 2.9.2008 08:42  954
TVX:
typicka prace s gitem by byla:
git-checkout -b bug1 -- schova soucasny "master", vytvori z nej branch "bug1" a prepne te do nej
git-commit -a -m 'oprava 1' -- commituje do bug1, "master" zustava schovan a nezmenen.
git-commit -a -m 'oprava 2'

git-checkout master -- prepnu se do master
git-pull . bug1 -- pokud se mi podarilo hezky opravit bug1, tak vsechny commity necham aplikovat na master.

Hezky na tom je, ze prepinanim mezi branchema git-checkout "prepina" obsah soucasneho adresare s projektem. Soubory, ktery jsou v jinych branchich pred tebou schova do .git. Nejsou to adresare nad/pod, jako je zvykem u SVN, ale jsou to opravdove branche.
al3x 2.9.2008 08:36  953
kkl: Mozna jsem ze zadani vyklouzl. Jen jsem chtel shrnout, proc si myslim, ze git stoji za vyzkouseni.
Co se tyce puvodniho zadani, tak tam bych mozna vyuzil prave gitove branche. Branch neni dalsi nadrazeny adresar (jako v svn). Mam working copy a git-checkout si prepinam, jestli v tom master(trunk), nebo nejaka branch. Tedy TVX by se obesel bez kopirovani zalohy stranou (do podadresare), jen si v tom jednom prepina aktualni branch se stable, pripadne to, co chce nahrat zmerguje do dalsi...

ad learning curve: Mno, pokud pouzivas svn repository, nebo rozjizdis svn jen pro sebe, tak bych se na to mrknul. Je to tak tyden obcasny prace, nez se naucis zaklady a jsi schopnej s tim pracovat. Dalsi 2-3 nez budes umet resit slozitejsi veci.
Nevyhodou muze byt:
1] absence rozumnyho win klienta (cygwin?)
2] nevim o spolupraci s nejakym IDE - nepouzivam to

Ale nenutim ti to :)
tvx tvx Myslet si, že svět je JEN takový, jak - ho v daný čas můžeme pochopit je hloupé. 2.9.2008 08:32  952
hm, muj problem bude ze sem si nehral s nejakym tim brachovanim a spol... a moc se mi do toho nechtelo neb na prvni procteni mi to neprislo uplne snadny abych se v tom pak vyznal :(
svn pouzivam nejvic jako zalohovaci system specialniho vyznamu - drzi verze a pokud potrebuju opravu odkudkoli ze sveta tak to mam s pripojenim na net pri ruce + to setri prenosy dat.
jinak u svn / cvs primo pro eclipse mam problem ze neumi na ssh pres sock5
kdokoliv Kdokoliv Nevidím důvod dělat cokoliv bezdůvodně. - http://kkl2401.wz.cz 1.9.2008 21:33  951
AL3X [949]: Pohybujes se stale jeste v kontextu puvodniho zadani? Tedy nahrady rucniho kopirovani nejakych adresaru se zalohami? To Ti skrta bod jedna (prace offline a online se stira, je-li klientem i serverem jediny stroj), skrta bod dva (pri takovymhle pouziti typicky nebudes potrebovat tolik branchovat a mergovat), zbytek mozna plati, ale je otazka, jak je podstatny.
Ja urcite nechtel rict, ze je git k nicemu, oni by ho asi pro ten kernel jinak taky nepouzivali (a nejen kernel, tech projektu pribyva, co jsem si tak vsim). Ale skutecne by me docela zajimalo, jak moc prace je pro cloveka zcela neznaleho problematiky rozbehnout lokalni cvs a ke spokojenosti ho k tem nejbeznejsim ukonum, pro ktere je i cvs zcela dostatecne, pouzivat a jak moc prace je pro tehoz cloveka rozbehnout git.
bredy 1.9.2008 17:48  950
svn je pomalý zejména proto, že provádí patche od starších k novým. Vytáhnout poslední revizi souboru, který má tisíce editací může být lahůdka.

Opakem je VSS, který provádí deltakompresi opačně, tam zas je lahůdka vytáhnout úplně první verzi příslušného souboru.
al3x 1.9.2008 16:39  949
Mne to za tu krivku stoji kvuli:
- moznost prace offline (i se svn)
- *hodne* namakany branchovani, mergovani, etc.
- grep-frendly - vytvori jen .git v top level adresari, ne jako svn vsude.
- netreba lokalni server nekde stranou
- dabelsky rychly (i ve srovnani s lokalni svn)
- hodne udelatek na reseni zvlastnich situaci, ktery v jinych ver.systemech neznam - napr git-stash.

Je na tobe, jestli to jsou i pro tebe padny duvody. :)
kdokoliv Kdokoliv Nevidím důvod dělat cokoliv bezdůvodně. - http://kkl2401.wz.cz 1.9.2008 15:40  948
AL3X [947]: Ale jo, ja rozumim tomu, ze to muze mit spoustu vyhod v te decentralizaci (na druhou stranu - jsem-li jedinej uzivatel cvs serveru beziciho na stejnym stroji, jako na jakym mam checkoutnutej projekt, je mi nejaka centralizace/decentralizace ukradena). Na druhou stranu si nejsem jistej, jestli to stoji za tu ucici se krivku, to je cely. (Plus teda mi prislo ponekud podivny to posilani patchu e-mailem, navic primo v tele zpravy, ale to muze bejt z my strany jenom predsudek, to uznavam.)
al3x 1.9.2008 15:25  947
Kdokoliv:
Git ma obrovskou vyhodu - decentralizaci:
- Kazdej ma u sebe celou (nebo podmnozinu) repository.
- Kazda verze, soubor, adresar je identifikovan hashem.
- Je mozne synchronisovat repository mezi sebou.

V praxi to funguje tak, ze pracujes lokalne. Lokalne i commitujes, branchujes, etc. Pokud chces, muzes nejakou branch "nekomu" poslat, pripadne si od "nekoho" branch stahnout (syncnout). Ten "nekdo" muze byt kolega, nebo centralni repo - zalezi na dohode mezi vami - uzivateli. Z toho vyplyva, ze s gitem muzes pracovat at jako se svym lokalnim verzovacim systemem (nic nesdilet), i jako s p2p, nebo centralni repo.

A ta nejhezci vec nakonec: Ma to svn konektor, takze muzes mit svoji git repository a syncovat ji s svn serverem. Coz dovoluje hlavne: offline praci se svn, commitovat lokalne do branche gitu a kdyz udelas neco smysluplnyho, tak to jednim prikazem changeset po changesetu nelejt do svn serveru.
kdokoliv Kdokoliv Nevidím důvod dělat cokoliv bezdůvodně. - http://kkl2401.wz.cz 1.9.2008 15:07  946
AL3X [945]: No treba proto, ze cvs je v Eclipsu zabudovany, pro svn vim, ze existuje plugin, ohledne gitu nevim, tak to nebudu radit. :-) Krom toho mi prijde snazsi filosoficky pochopit, jak se pracuje s cvs nebo svn, oproti pochopeni, jak se pracuje s gitem, ale mozna jsem ovlivnenej tim, ze prave cvs aspon trochu znam, mozna, ze nekdo, kdo nezna treba nic, to uvidi jinak. Nicmene ja kdyz jsem si v rychlosti precetl neco uvodniho o tom, co je git, co to prinasi a jak se s tim pracuje, tak jsem z toho byl ponekud jelen.
al3x 1.9.2008 14:50  945
kkl: Proc lokalni svn? Takovej git...
tvx tvx Myslet si, že svět je JEN takový, jak - ho v daný čas můžeme pochopit je hloupé. 1.9.2008 14:27  944
hm, mozna k tomu dojde ale zatim mi to prijde jako zbytecny zesloziteni situace.
kdokoliv Kdokoliv Nevidím důvod dělat cokoliv bezdůvodně. - http://kkl2401.wz.cz 1.9.2008 14:10  943
tvx [942]: No a toho samotnyho projektu taky, ne? Ale proste ja myslim, ze to celkove resis nejak divne, fakt bys imho mel nejjednodusi si lokalne rozjet nejaky cvs nebo svn, asi by sis usetril spoustu problemu.
tvx tvx Myslet si, že svět je JEN takový, jak - ho v daný čas můžeme pochopit je hloupé. 1.9.2008 13:56  942
kkltak bohuzel, muzu pouze pridavat adresarte dalsich podrizenych projektu a knihoven :(
al3x 20.8.2008 07:50  941
Zlatej GIT.
bredy 19.8.2008 22:17  940
Dobrý je naučit se branchovat (alespoñ tedy v SVN). Potřebuju udělat krok, který obsahuje spoustu malých kroků a nechci je zveřejňovat v trunku, tak si je branchnu a přitom si switchnu workspace. Na práci se nic nemění, akorát prostě commituju do jiné větve. A když to mám hotový, tak to nejprve u sebe zmerguju s trunkem, zase vyzkouším a jsem li spokojen, zmerguju to moje zpet do trunku a switchnu se do trunku. Je to pár kliknutí. Jen je dobré do commentu psát číslo revize ze které se branchovalo, mergovalo, a také jméno větve ze které se mergovalo nebo branchovalo. Zvlášť, pokud je to větší firma, kde mezi mím branchem a commitem po pěti minutách se zvedne číslo revize o 50

[ 857 ] <Novější  <<<Nejnovější  Nejstarší>>>  Starší>  

(c) 2001-2011 Lopuch.cz   
Kontakt