abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 12:44 | Pozvánky

    V sobotu 1. června lze navštívit Maker Faire Ostrava, festival plný workshopů, interaktivních činností a především nadšených a zvídavých lidí.

    Ladislav Hagara | Komentářů: 0
    dnes 12:22 | Nová verze

    Webový server Caddy (Wikipedie) s celou řadou zajímavých vlastností byl vydán ve verzi 2.8 (𝕏). Přehled novinek na GitHubu.

    Ladislav Hagara | Komentářů: 1
    včera 22:11 | Nová verze

    Byla vydána verze 3.0 (@, 𝕏) svobodného softwaru HAProxy (The Reliable, High Performance TCP/HTTP Load Balancer; Wikipedie) řešícího vysokou dostupnost, vyvažování zátěže a reverzní proxy. Detailní přehled novinek v příspěvku na blogu společnosti HAProxy Technologies.

    Ladislav Hagara | Komentářů: 3
    včera 21:11 | IT novinky

    Společnost Framework Computer představila novou vylepšenou verzi svého modulárního notebooku Framework Laptop 13 s Intel Core Ultra Series 1, displej s lepším rozlišením a novou webovou kameru. Přímo do Česka jej zatím koupit nelze.

    Ladislav Hagara | Komentářů: 0
    včera 15:44 | Nová verze

    Byla vydána nová verze 2.16 svobodného video editoru Flowblade (GitHub, Wikipedie). Přehled novinek v poznámkách k vydání. Videoukázky funkcí Flowblade na Vimeu. Instalovat lze také z Flathubu.

    Ladislav Hagara | Komentářů: 2
    28.5. 21:22 | Zajímavý software

    TerminalTextEffects (TTE) je engine pro vizuální efekty v terminálu. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.

    Ladislav Hagara | Komentářů: 41
    28.5. 17:11 | Pozvánky

    Od čtvrtka 30. 5. do soboty 1. 6. lze v Praze navštívit Veletrh vědy, tj. největší populárně naučnou akci v České republice, kterou každoročně od roku 2015 pořádá Akademie věd ČR. Vstup zdarma.

    Ladislav Hagara | Komentářů: 13
    28.5. 14:11 | Komunita

    Canonical představil Ubuntu optimalizované pro jednodeskový počítač s RISC-V procesorem Milk-V Mars.

    Ladislav Hagara | Komentářů: 0
    27.5. 21:22 | Nová verze

    Armbian, tj. linuxová distribuce založená na Debianu a Ubuntu optimalizovaná pro jednodeskové počítače na platformě ARM a RISC-V, ke stažení ale také pro Intel a AMD, byl vydán ve verzi 24.5.1 Havier. Přehled novinek v Changelogu.

    Ladislav Hagara | Komentářů: 0
    27.5. 19:44 | IT novinky

    Společnost xAI založena Elonem Muskem a stojící za AI LLM modelem Grok získala investici 6 miliard dolarů.

    Ladislav Hagara | Komentářů: 1
    Podle hypotézy Mrtvý Internet mj. tvoří většinu online interakcí boti.
     (90%)
     (3%)
     (4%)
     (4%)
    Celkem 1000 hlasů
     Komentářů: 16, poslední 14.5. 11:05
    Rozcestník

    Git slaví 10 let

    Git, distribuovaný systém správy verzí vytvořený Linusem Torvaldsem, původně pro vývoj Linuxu, slaví 10 let. Vývoj Gitu začal v dubnu 2005. Bylo potřeba nahradit proprietární BitKeeper. Rozhovor s Linusem Torvaldsem o Gitu na Linux.com.

    6.4.2015 22:22 | Ladislav Hagara | Komunita


    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    Bystroushaak avatar 7.4.2015 00:53 Bystroushaak | skóre: 36 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Zrovna jsem dočetl knihu Dokonalý kód, která vyšla (anglicky) někdy v 2004. Přišlo mi hrozné, jak moc problémů, kterým se věnovala se dá vyřešit právě distribuovaným správcem zdrojových kódů. Skoro až zamrazí, když si představím (a zavzpomínám) jak se žilo bez nástrojů tohohle typu. „Verzování“ kopírováním adresáře, či balením do .ZIPu, návrat ke starým verzím jen co umí editor přes CTRL+u, či co mám zkopírované ve složce s minulou verzí a tak. Brr.

    GIT změnil celé odvětví opensource tak masivně, jako málokterý jiný nástroj. Za to Linusovi patří věčná sláva.

    PS: Je mi jasné, že i dřív existovaly nástroje na správu zdrojového kódu, SVN jsem taky chvíli používal, ale ty nehrály takový prim, jako dnes GIT.
    Max avatar 7.4.2015 07:33 Max | skóre: 72 | blog: Max_Devaine
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Já myslel, že cvs zachránil svět, svn ho vylepšil a git ho dotáhl téměř k dokonalosti :)
    Jinak u nás stále jedeme svn a přemýšlím nad konverzí na git. vývojáři s tím už celkem umí, tak nějak si zvykli a je čas se posunout dál.
    Zdar Max
    Měl jsem sen ... :(
    7.4.2015 07:38 disorder | blog: weblog
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Ja som celkom uspesne fungoval cez git-svn
    7.4.2015 14:44 nobody
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    taky pamatuju u projektu jak se prechazelo z cvs na svn, takze git vnimam jako dotazeni... stejne tak sourceforge tu byl daaavno pred github, ale ten to pojal tak sikovne prekopade ze zvitezil :)
    7.4.2015 15:43 Honza
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Jo, jo. Záloha v zipech -> CVS -> SVN -> GIT. GIT má zjevné výhody (hlavně pro větší a divoce vyvíjené projekty), ale rozhodně bych netvrdil, že před GITem nešlo verzovat. Dneska už si neumím představit, že bych bez něčeho takového vyvíjel. I v úplném miniprojektu s jedním programátorem je moc fajn, že si člověk může bezstarostně editovat a kdykoli se lze vrátit k rozpracované verzi, porovnat rozdíly atd. Představa, že bych kvůli nějakému experimentu musel odkopírovávat zdrojáky vedle nebo po jeho skončení ručně odmazávat změny, je dost děsivá.
    7.4.2015 18:50 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Verzovat samozřejmě šlo, ale i když pominu distribuovaný charakter, který je sám o sobě obrovským přínosem (nutnost dotazovat se serveru na každou drobnost z historie je neskutečně otravná), jsou tam naprosto zásadní omezení. CVS pro rozumnou práci diskvalifikuje už skutečnost, že principiálně nedokáže svázat dohromady změny na různých souborech. Subversion tohle sice umí, ale z čtení její dokumentace jsem nabyl dojem, že branch je pokročilá černá magie, které je lepší se vyhnout, chci-li si uchovat zdravý rozum (a dodnes mám podezření, že v Subversion to tak opravdu je). U gitu to byla otázka 5-10 minut na přečtení příslušné kapitolky v Pro git a dalších 5-10 minut na vyzkoušení, že merge a rebase dělají opravdu to, co od nich očekávám.
    7.4.2015 19:02 karelI
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Branch v SVN je jeste docela jednoduchy, proste to udela melkou kopii. Ale ten nasledny merge je opravdu domatlana magie a treba s prejmenovanim souboru/adresaru se to velice trapi. Obecne je merge mnohem slozitejsi proces nez v gitu, zvlaste pokud mate vice hlavnich vetvi a z nich mergujete do feature branchi a zpet. Pokud se uzivatel nechova slusne, tak mu to SVN vrati. GIT je naopak velmi sporadany, vetsinou si nestezuje a udela co se po nem chce.

    Ono je na tom videt, ze SVN opravdu bylo delano jako spravne CVS, cili verzuje cely strom najednou, ma levne vetveni apod., ale to mergovani tam bylo dodelano dodatecne a uz od zacatku jsem mel pocit, ze vyvojari si nejsou uplne jisti, jestou jdou spravnou cestou, jen tusili, ze to nejak zlomi.
    7.4.2015 20:12 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Ano, jistě, nevyjádřil jsem se úplně špatně. Branch jako taková u Subversion ještě jde, to, co jsem měl na mysli, byl merge (nějak jsem na chvíli zapomněl, že člověk občas vytváří i větve, které nikdy nikam mergnout nechce).
    7.4.2015 20:13 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    nevyjádřil jsem se úplně špatně

    Hm, tohle se taky moc nepovedlo. :-)

    7.4.2015 16:30 karelI
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    > cvs zachránil svět

    Co si z te doby pamatuju, tak CVS nejak fungovalo, ale i tak jsem mel prilis casto pochyby, jestli to cas setri nebo to zpusobuje novy druh problemu. SVN byl pro me v tomto ohledu skutecny zazrak, skutecne se podarilo udelat CVS spravne. Pak prisel GIT a dlouho jsem se mu branil a nechapal jak muze byt prinosny pro firemni nebo jednomuzne projekty. Pak jsem zahledl Linuse na prednasce, po vete "CVS nelze udelat spravne" me to zaujalo a od te doby povazuju SVN jen za jednoduchou nahrazku. Ale svou historickou ulohu to vse melo...
    8.4.2015 15:19 TM
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Pořád přemýšlím, co je na větvení a mergování v Subversion, proboha, tak složitého? Jinak, dost mně práci se Subversion usnadňují RapidSVN, Meld a Subclipse....
    Pro mě je ale nejlepším verzovacím systémem, jaký jsem kdy potkal, IBM(Rational) ClearCase se svými view a configspecy. Ta koncepce je myslím geniální a nepřekonaná. Pravda, není to free, stojí dost peněz.
    pavlix avatar 8.4.2015 16:09 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Pořád přemýšlím, co je na větvení a mergování v Subversion, proboha, tak složitého? Jinak, dost mně práci se Subversion usnadňují RapidSVN, Meld a Subclipse....
    Mně osobně nejvíc práci usnadňuje, když žádná klikátka používat nemusím. Snad s výjimkou meld, tomu určité výhody rád přiznám, i když uvažuju o tom, že bych se mu taky podíval trochu na zoubek a vylepšil pár věcí.
    Pro mě je ale nejlepším verzovacím systémem, jaký jsem kdy potkal
    Já jsem se Subversion začínal a přechod na Git byl pro mě jako vstup do světa neomezených možností. Ještě na SVN občas se sentimentem vzpomínám, ale v reálu si nemůžu pomoct a dávám přednost git-svn.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    8.4.2015 17:07 karelI
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Mergovani v SVN slozite neni, akorat je tupe. Pri odvaznejsim zachazeni se zdrojaky nebo mergovani pres vice vetvi to zacne hazet hromady tree confliktu, hur se to vyporada s konflikty v souborech atd. Zkousel jsem ten samy postup v gitu a SVN, ten prvni ani nezbleptl a udelal co jsem potreboval, SVN se vztekalo a vyzadovalo manualni zasahy.
    7.4.2015 08:08 Sid
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Ono keby nebol git tak by bol mercurial ktory vznikol plus minus v rovnaky cas a na zaciatku mal celkom vyhodu v dobrej integracii aj inde ako na Linuxe. Skor by som povedal, ze ten spravny motor zacali byt ako sluzby ktore github a spol. ktore tu pouzitelnost a uzivatelksu privetivost dotiahli inde ako sourceforge napr.
    7.4.2015 09:01 xm | skóre: 36 | blog: Osvobozený blog | Praha
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Ve stejné době jako Mercurial (možná i o něco dřív, nejsem si teď jistý) vznikl i Bazaar, který byl ze začátku lepší i než Mercurial a rozhodně lepší než první verze Gitu. Ale na velké projekty typu Linux byl pomalý (což se později zlepšilo). Co vedlo k tomu že se prosadil zrovna Git byla IMHO hlavně reklama kterou mu dělal Linus s Linuxem.
    Svoboda je tím nejdůležitějším, co máme. Nenechte se o ní připravit, podporujte Pirátskou stranu!
    7.4.2015 09:28 Aleš Kapica | skóre: 51 | blog: kenyho_stesky | Ostrava
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Ve stejné době jako Mercurial (možná i o něco dřív, nejsem si teď jistý) vznikl i Bazaar, který byl ze začátku lepší i než Mercurial a rozhodně lepší než první verze Gitu.
    No to tedy ani náhodou. První verze Bazaaru nebyly nic než vylepšené SVN.
    7.4.2015 13:44 xm | skóre: 36 | blog: Osvobozený blog | Praha
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Naprostý nesmysl. Bazaar byl od začátku vyvíjený jako distribuovaný VCS a funkčně byl na tom ze začátku lépe jak Git (jen byl pomalejší).

    Např. tuším rename zvládal tenkrát Bazaar mnohem lépe než Git, merge mu šly také lépe, ale bylo toho ještě vícero. V současnosti jsou na tom obdobně (respektive Git už nejspíš lépe, protože se mu věnuje mnohem více vývojářů - na Git jsem z Bazaaru přešel již před delší dobou, ale jediným důvodem byl ekosystém, kdy se dnes vše točí okolo Gitu, funkčně nepozoruji prakticky rozdíl).
    Svoboda je tím nejdůležitějším, co máme. Nenechte se o ní připravit, podporujte Pirátskou stranu!
    pavlix avatar 7.4.2015 15:01 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Mně to tak přišlo, že Bazaar měl za cíl co nejrychleji vyrobit jakž takž pohodlný DVCS pro běžné úkoly, zatímco cílem Gitu bylo v té době vyrobit kvalitní a efektivní backend pro budoucí DVCS bez důrazu na uživatelské funkce, které se řešily o poznání později.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    GeoRW avatar 7.4.2015 09:47 GeoRW | skóre: 13 | blog: GeoRW | Bratislava
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    zaujimave, ze vsetky 3 vznikli zhruba v rovnaky cas :-) Asi ten spor ohladom BitKeeper-u a neexistencie open source CVS nasrdil viacero ludi:
    • Bazaar 26 March 2005
    • Git 7 April 2005
    • Mercurial 19 April 2005
    "This is to be taken with a grain of salt." ACBF - Advanced Comic Book Format
    7.4.2015 13:49 xm | skóre: 36 | blog: Osvobozený blog | Praha
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Oni už předtím existovaly distribuované opensource VCS, např. Darcs (od roku 2003) a Monotone (taktéž od roku 2003). Ale žádné tak nějak nesplňovaly Linusovi požadavky (a zjevně nejen jeho - proto toho vzniklo tou dobou více najednou a přitom vše v podstatě stejné, na rozdíl od těch předchozích).
    Svoboda je tím nejdůležitějším, co máme. Nenechte se o ní připravit, podporujte Pirátskou stranu!
    pavlix avatar 7.4.2015 11:00 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Dokud jsem Git používal jako nástroj k označování změn, aniž bych ty změny cíleně připravoval jako patche nebo commity do správy verzí, tak by mi to bylo dost jedno a stejně dobře bych používal jakýkoli jiný DVCS. Ale v době, kdy ho používám na přípravu patchsetů, které někdo další uvidí a nedej bože odmítne s žádostí o rozdělení/sloučení/přepracování, tak teprve začínám doceňovat vlastnosti Gitu, které nejspíš nebudou mít ekvivalent v žádném jiném DVCS.

    Tím neříkám, že se nemá Git kam zlepšovat nebo že nemůže přijít nějaký nástupce, dokonce i pod názvem Git se takový skrývá v podobě významného přepracování v začátcích jeho obliby. Možná by nebylo špatné základ Gitu a protokoly standardizovat a propagovat, aby nové nástroje byly plně interoperabilní.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    7.4.2015 13:30 jos
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    > ... které nejspíš nebudou mít ekvivalent v žádném jiném DVCS

    nejspíš se pleteš, sice neznam git a nevim jaký workflov máš na mysli, ale mercurial rozhodně umožňuje rozdělení/sloučení/přepracování
    7.4.2015 14:24 kralyk z abclinuxu | skóre: 29 | blog:
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    git checkout -b experiment-foo
    git commit ...
    git commit ...
    git checkout master
    # experiment dopadl:
    git merge experiment-foo    # případně rebase
    # experiment nedopadl:
    git branch -D experiment-foo
    
    Tohle AFAIK v mercurialu jde hůř (kdyžtak mě opravte).
    7.4.2015 19:06 linear | skóre: 9 | blog: pozor
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    také mi to přijde jako nesmyslné. Ten projekt můžeš naklónovat a experimentovat tam. Branche neuznávám, protože jsou zdvojováním toho co dělá file systém. Adresáře file systému jsou branche projektu. Není důvod zasírat repozitář.
    7.4.2015 19:25 karelI
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Clone je v podstate branch udelany hlubokou kopii (je to copy + branch, nikoli copy misto branche), coz na velkych projektech neni zrovna levne. Dale to znamena znovu vse kompilovat, prenastavit cesty v navaznych toolech atd. Navrhovat nahradu konstantni operace za linearni + dalsi rezie navic kvuli spornemu "zasirani repositare" je ponekud kanon na vrabce. To uz lze spise klonovani repozitare oznacit za zasirani FS.
    pavlix avatar 7.4.2015 19:50 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Nejvíc mě na tom baví ta představa, že budu nějaký netriviální software buildovat opakovaně jen kvůli přepínání mezi větvemi z triviálními rozdíly a ještě se budu snažit tu ztrátu času aspoň částečně dohánět pomocí ccache, abych na kompilacích nestrávil mládí. A to bych nikomu nepřál, protože kdybych já pořád jenom kompiloval, tak byste se mě během práce na ábíčku nezbavili ani na chvíli.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    8.4.2015 11:07 jos
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    s mercurialem můžeš experimentovat v jednom klonu a cestovat mezi větvema, nemusíš nutně mít hned dvě pracovní kopie
    pavlix avatar 8.4.2015 11:22 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Komentuju stále ještě v kontextu komendáře od linear a reakcí na něj. On větve jako funkcionalitu podle svého vyjádření vůbec neuznává a dává přednost vícero klonům v samostatných adresářích. Tedy neuznává celý ten workflow, kdy se mi v jednom adresáří mění obsah přepínáním větví.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    8.4.2015 12:01 jos
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    asi neřeší stejný problémy jako ty, já taky nedělam s kompilovaným jazykem, takže si můžu dovolit mít víc pracovních kopií
    pavlix avatar 8.4.2015 16:09 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    asi neřeší stejný problémy jako ty
    You don't say.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    pavlix avatar 8.4.2015 11:26 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Nicméně pokud chceš reagovat na kralyka a jeho domněnku, že výše uvedený workflow jde v Hg realizovat hůře, jistě se stejně jako já nechá rád poučit o tom, jaké přípazy bys k tomu použil, co by fungovalo stejně a co jinak. Já osobně jsem toho názoru, že pro moje použití je Git stále ještě nedostižitelný, ale spíše díky jeho možnostem v oblasti úpravy patchsetů (interaktivní rebase, interaktivní zařazování do indexu a podobných).
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    8.4.2015 12:06 jos
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    > pokud chceš reagovat na kralyka

    už se stalo

    tvuj názor by se dal shrnout asi takhle: "naučil sem se s gitem pracovat tim a tim způsobem a jak je to u konkurence nevim", což ti neberu, ale vyvozovat z toho co konkurence umí je trochu mimo
    pavlix avatar 8.4.2015 16:12 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    už se stalo
    Později jsem si všiml, díky, rád si držím přehled o alternativách.
    ale vyvozovat z toho co konkurence umí je trochu mimo
    Dělá ti dobře se do mně navážet? Já jen, že mně to nedělá ani dobře ani špatně, jsem na to na ábíčku zvyklý, takže je mi to úplně u prdele a radši se věnuju faktické stránce. To jen takové pošťouchnutí, dál už se k tvým bolístkám nehodlám vyjadřovat.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    9.4.2015 10:18 jos
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    já se do tebe nenavážim, to ty se v náznacích navážíš do ne-git verzovadel ve stylu "neumíte napsat nic co gitu sahá po kotníky"

    bolístky žádný nemam, ale připadá mi jako bych se tu teď bavil s Jirsákem
    pavlix avatar 9.4.2015 11:39 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    já se do tebe nenavážim
    Netřeba dalšího komentáře.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    pavlix avatar 7.4.2015 19:37 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Ten projekt můžeš naklónovat a experimentovat tam.
    Ve výjimečných případech, kdy člověk potřebuje duplikovat filesystém a mít zároveň k dispozici checkout různých větví bych to udělal, jinak mi to subjektivně připadá jako nesmysl a filosoficky se to vůbec neshoduje s tím, jak potřebuju pracovat. Je to takové drbání levou nohou za pravým uchem, funguje to, řeší to absenci funkcionality, ale nenazval bych to hezkým řešením.
    Branche neuznávám, protože jsou zdvojováním toho co dělá file systém. Adresáře file systému jsou branche projektu.
    To zavání nepochopením větví, tak jak jsou řešené v Gitu. Osobně pro mě byl Git vysvobozením v tom smyslu, že s větvemi umí nakládat víceméně tak, jak se mi to hodí k práci. Suplování větví adresáří mi připadá absurdní a neefektivní.
    Není důvod zasírat repozitář.
    Branch v Gitu je de facto proměnné pojmenování commitu, repozitář nijak nezasírá. Technicky je to jeden soubor s číslem commitu a prakticky je to jedna linie vývoje s uloženým aktuálním stavem.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    8.4.2015 11:11 jos
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    > To zavání nepochopením ...

    nic ve zlým, ale všechno cos tu zatim napsal o mercurialu zavání tim že mercurial neznáš, ale z nějakýho důvodu máš potřebu ho resp. veškerou ostatní konkurenci hodnotit (asi že komentáře jinejch uživatelů bereš jako dokumentaci mercurialu)
    pavlix avatar 8.4.2015 11:38 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    nic ve zlým
    Proč tyhle ošklivé fráze?
    nic ve zlým, ale všechno cos tu zatim napsal o mercurialu
    Ty umíš člověka pobavit.
    zavání tim že mercurial neznáš
    Možná proto o něm (mimo zvědavých dotazů) nic nepíšu. Pokud tedy nepočítáš mojí mnoho let nevyvrácenou domněnku, že je Git mezi open source systémy nedostižitelný v úpravě patchsetů. Ovšem taková domněnka je lehce vyvratitelná, kdyby ne jinak tak tím, že takový systém někdo napíše a publikuje, ať už bude mít za backend Git, Hg nebo svůj vlastní nový.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    8.4.2015 12:13 jos
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    > ... které nejspíš nebudou mít ekvivalent v žádném jiném DVCS

    sorry, podsunul sem ti že píšeš o mercurialu, když si vlastně psal o všech DVCS

    > domněnku, že je Git mezi open source systémy nedostižitelný v úpravě patchsetů

    v nějakým konkrétním workflow, což neznamená že to nikdo jinej neumí jinak

    ale je asi jasný, že díky tomu že se git vyvíjí dle potřeb vývojářů jádra a má dost konrtibutorů, tak asi bude nejnabitější (neznamená nutně kvalitnější)
    pavlix avatar 8.4.2015 16:13 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    sorry, podsunul sem ti že píšeš o mercurialu, když si vlastně psal o všech DVCS
    Dokonce ani ne selektivně o DVCS, nicméně stále se jedná o vyvratitelnou domněnku.
    v nějakým konkrétním workflow
    Nikoliv.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    9.4.2015 14:28 MarSik
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Existuje git new-workdir. Vyrobí nový pracovní adresář svázaný s původním repozitářem a cache. Takže okamžitě vidí všechny branche, fetch a push se volá jen jednou a tak..
    9.4.2015 19:01 Ondrej Santiago Zajicek
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Ve výjimečných případech, kdy člověk potřebuje duplikovat filesystém a mít zároveň k dispozici checkout různých větví bych to udělal,
    Zrovna tohle je vec, kterou bezne pouzivam, a to, ze pro to git nema rozumnou podporu (vice working directories se sdilenym repository), povazuju za (pro mne) nejvetsi nedostatek. Pokud clovek dela na dvou vecech zaroven, tak je daleko jednodussi jen zmenit adresar, nez udelat sekvenci: ulozit docasne zmeny, checkout druhe vetve, obnovit docasne zmeny, make clean, configure, make. Druha vyhoda je ta, ze clovek pri porovnavani zmen neni omezen jen na nastroje, ktere primo podporuji git, a muze pouzit libovolne nastroje pro praci s textem.

    Zatim to resim nekolika klonama, ale tam je zas otrava v tom, ze nemaji synchronizovanou repository.

    Nize MarSik upozornil na git new-workdir (diky, to jsem neznal), coz vypada velmi zajimave, ale je to hack treti strany, takze hrozi, ze se to treba rozbije pri upgradu na novejsi verzi gitu.
    9.4.2015 22:13 chrono
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    git-new-workdir je súčasťou git (síce je len v contrib adresári), takže toho, že prestane náhodou fungovať by som sa príliš nebál.
    xkucf03 avatar 10.4.2015 01:23 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Zatim to resim nekolika klonama, ale tam je zas otrava v tom, ze nemaji synchronizovanou repository.

    A co to udělat tak, že jeden bude klonem druhého (místo centrálního úložiště)? Místo na disku se sice neušetří, ale po síti to budeš tahat jen jednou.

    Např. takový Monotone má oddělenou databázi od pracovní kopie a jednu databázi můžeš sdílet z víc míst.

    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    pavlix avatar 10.4.2015 07:32 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    A co to udělat tak, že jeden bude klonem druhého (místo centrálního úložiště)? Místo na disku se sice neušetří, ale po síti to budeš tahat jen jednou.
    To se obávám, že nebude dost pohodlné. Já osobně jsem měl za to, že více workdirs se sdíleným repozitářem je standardní součásti Gitu (jen jsem to nepotřeboval), ale v tomhle má podle mě Santiago pravdu, že by to chtělo doladit a začlenit. Dokonce si říkám, jestli by pro tyhle lidi (co používají více workdirs) nebyl užitečný workflow s adresářem, který by sloužil jako bare repozitář (ale měl pořád podadresář .git kvůli pořádku) a teprve pod ním by si vytvářeli různě pojmenované pracovní adresáře.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    10.4.2015 07:50 Jindřich Makovička | skóre: 17
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Místo (i čas) se ušetří, protože git clone v rámci jednoho filesystému jen vytváří hardlinky na původní objekty.
    10.4.2015 14:08 kralyk z abclinuxu | skóre: 29 | blog:
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    V gitu to jde též:
    [0] 13:56 vojta ~/tmp/git $ git init
    Initialized empty Git repository in /home/vojta/tmp/git/.git/
    [0] 13:56 vojta ~/tmp/git $ mv .git repo.git
    [0] 13:56 vojta ~/tmp/git $ export GIT_DIR="${PWD}/repo.git"
    [0] 13:56 vojta ~/tmp/git $ echo $GIT_DIR
    /home/vojta/tmp/git/repo.git
    [0] 13:56 vojta ~/tmp/git $ mkdir work-a work-b
    [0] 13:57 vojta ~/tmp/git $ cd work-a
    [0] 13:57 vojta ~/tm/git/work-a $ echo 'Hello' > hello.txt
    [0] 13:57 vojta ~/tm/git/work-a $ git add hello.txt
    [0] 13:57 vojta ~/tm/git/work-a $ git commit -m Hello
    [master (root-commit) 9f814ec] Hello
     1 file changed, 1 insertion(+)
     create mode 100644 hello.txt
    [0] 13:57 vojta ~/tm/git/work-a $ cd ../work-b
    [0] 13:58 vojta ~/tm/git/work-b $ git checkout -f master
    Already on 'master'
    [0] 13:58 vojta ~/tm/git/work-b $ echo 'World' >> hello.txt
    [0] 13:58 vojta ~/tm/git/work-b $ git commit -a -m World
    [master e019ee6] World
     1 file changed, 1 insertion(+)
    [0] 14:01 vojta ~/tm/git/work-b $ git log -p | cat
    commit e019ee6e455007dcd8674d9e323743e335762e7d
    Date:   Fri Apr 10 13:58:49 2015 +0200
    
        World
    
    diff --git a/hello.txt b/hello.txt
    index e965047..f9264f7 100644
    --- a/hello.txt
    +++ b/hello.txt
    @@ -1 +1,2 @@
     Hello
    +World
    
    commit 9f814ec1133b9e87cb8a2d997fb4eb2fec2b8842
    Date:   Fri Apr 10 13:57:33 2015 +0200
    
        Hello
    
    diff --git a/hello.txt b/hello.txt
    new file mode 100644
    index 0000000..e965047
    --- /dev/null
    +++ b/hello.txt
    @@ -0,0 +1 @@
    +Hello
    [0] 14:01 vojta ~/tm/git/work-b $
    
    Akorát je potřeba dávat bacha na to, že když člověk přejde do toho druhýho work tree, může ten work tree být v jiným stavu oproti repo a může být potřeba udělat ten checkout -f nebo něco podobného.
    7.4.2015 19:45 ::: | skóre: 14 | blog: e_lama
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    K tomu co psali predemnou bych jeste doplnil ze kopirovanim adresare ztratis historii
    7.4.2015 20:05 kralyk z abclinuxu | skóre: 29 | blog:
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    On tím asi myslí, že si to naklonuješ do jinýho adresáře, tj. historii neztratíš, ale stále to je dost nešikovné kvůli důvodům, které popsali ostatní výše...

    Navíc, pokud to mergneš, ta experimentální větev tam bude strašit navěky se všemi svými experimentálními commity etc...
    8.4.2015 10:54 jos
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    když to mergnu, tak tim asi něco sleduju a ta větev asi není moc experimentální

    pokud experimentuju a nechci změny zveřejnit, tak mam hg strip
    8.4.2015 19:23 Zopper | skóre: 15
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Udělám větev, něco na ní experimentuju, změním, funguje to. Tak git rebase na uspořádání commitů typu "tohle vypadá, že by mohlo být ok" na comity co dávají smysl, git merge. A nebo to pořád nefunguje, rozhodnu se zkusit to jinak. A tak tu větev smažu. V průběhu práce nevím, kterou možností to skončí.
    "Dlouho ještě chcete soudit proti právu, stranit svévolníkům?" Ž 82,2
    pavlix avatar 8.4.2015 19:56 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Já jsem se přistihl, že jenom díky tomu, že můžu, dělám s větvemi taková kouzla. Popravdě hlavní sílu Gitu poznávám ve chvíli, kdy třeba odešlu na upstream nějakou sadu změn (i kdyby ve formě odkazu na větev s novými commity oproti nějakému stavu masteru, ale maintainer se rozhodne udělat tunu věcí jinak a pushuje do masteru.

    V tu chvíli je totiž nasnadě udělat obyčejný rebase (ač si nejsem jistý, jestli má i mimo Git toto slovo konzistentní význam), jenže ten nemusí projít nebo může být natolik komplikovaný, že si v půlce už ani nepamatuju, co dělám. Musím říct, že s nástroji, co nabízí Git se z toho dá docela hezky vyhrabat.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    9.4.2015 10:21 jos
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    autor mercurialu razí jedinou myšlenku - dokud svoje věci nezveřejníš, tak si dělej s historií co chceš

    nástrojů je na to dost, jen je blbý, že názvosloví se mezi gitem a hg občas dost liší, takže si pak lidi moc nerozumí
    9.4.2015 10:35 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    autor mercurialu razí jedinou myšlenku - dokud svoje věci nezveřejníš, tak si dělej s historií co chceš

    To ale dost přesně odpovídá tomu workflow, které popisoval kolega: dokud si na tom pracuju lokálně, můžu si commity libovolně upravovat, přerovnávat, slučovat nebo rozdělovat. Nakonec to buď celé pushnu nebo tu větev smažu (a nebo ji tam prostě nechám být).

    9.4.2015 11:08 jos
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    dyť jo, mě se jen zdá že uživatelé gitu si myslí, že jedině git je to jedný správný a všemocný verzovadlo
    pavlix avatar 9.4.2015 11:34 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Tady to smrdí nepatřičnou generalizací a možná i nepochopením větší části komentářů v diskuzi.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    8.4.2015 11:04 jos
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    hg up -r <hash>
    hg ci
    hg ci
    hg up -r <hash-kam-chci-mergovat>
    # experiment dopadl
    hg merge
    # experiment nedopadl
    hg strip -r <hash>
    
    nevim ale v jakým stavu zůstane git repository, hg repository pak vůbec neobsahuje experimentální changesety
    8.4.2015 14:15 kralyk z abclinuxu | skóre: 29 | blog:
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Díky za příklad. Koukám do hg help a snažim se to pochopit. strip je rozšíření, jestli to správně chápu, ale vypadá to, že je součástí hg, akorát to asi nemam povolený. Co dělá hned ten první příkaz? Ten <hash> je nějaký existující commit?
    nevim ale v jakým stavu zůstane git repository, hg repository pak vůbec neobsahuje experimentální changesety
    To je u toho příkladu s gitem stejný.
    8.4.2015 14:34 jos
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    strip - přesně tak, další užitečný (a distribuovaný standardně s mercurialem) sou transplant, rebase a histedit, v .hgrc:
    [extensions]
    transplant =
    rebase =
    strip =
    histedit =
    
    asi sem právě pochopil proč si tu všichni gitaři myslí že mercurial toho moc neumí; většina novejch věcí v mercurialu začíná tak, že někdo externě spleská extenzi (kterou je nutný si ručně přidat v .hgrc ve formě cesty k .py) a když se to Mackallovi líbí, tak to zařadí do upstreamu, ale zůstává nutnost extenzi zapnout (důvod neznam, možná kvůli kolizi původního .py s jádrem)

    víc viz http://mercurial.selenic.com/wiki/UsingExtensions

    jop, hash je commit
    8.4.2015 14:38 kralyk z abclinuxu | skóre: 29 | blog:
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    asi sem právě pochopil proč si tu všichni gitaři myslí že mercurial toho moc neumí; většina novejch věcí v mercurialu začíná tak, že někdo externě spleská extenzi (kterou je nutný si ručně přidat v .hgrc ve formě cesty k .py)
    Asi to tak bude; teď jsem narazil na Bookmarks, což vypadá, že dělá něco jako git branches...
    8.4.2015 14:36 jos
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    jo a sorry, v tom poslednm příkazu nemá bejt prostý <hash>, ale něco jako <hash-první-experimentální-revize>
    xkucf03 avatar 8.4.2015 21:09 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    …je rozšíření, jestli to správně chápu, ale vypadá to, že je součástí hg

    Ano, Mercurial je modulární. Hodně funkcionalit je součástí standardní instalace, ale přitom to jsou moduly (rozšíření), které můžeš ale nemusíš používat, nemusíš je mít ani zapnuté, když nechceš. Plus je spousta modulů třetích stran, od nezávislých autorů.

    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    pavlix avatar 8.4.2015 19:30 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Mimochodem v příkladu s Gitem nejsi nucen psát/kopírovat ani jeden hash, takže bych tenhle příklad co do pohodlí neviděl jako úplný ekvivalent.

    S tím je spojená další věc, že ten příklad v Gitu je triviální, ale jde velmi jednoduše rozšířit o možnost, že mi někdo teď napsal, že potřebuje něco vyzkoušet a já chci nechat danou větev rozpracovanou a hlavně pojmenovanou, protože teď budu chvíli zkoušet úplně něco jiného. Chápu, že to už je trochu čtení mezi řádky, ale jako starý praktik na první pohled vidím, že ač je technicky vzato výsledek podobný, nejedná se o ekvivalentní případy s ekvivalentní silou a pohodlím.

    Disclaimer: Opět se nevyjadřuju k Hg, který, jak už bylo v diskuzi psáno, dostatečně neovládám, ale ke konkrétnímu případu výše.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    9.4.2015 10:14 jos
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    všechno co píšeš de v mercurialu udělat taky, i bez těch hashů se dá obejít
    pavlix avatar 9.4.2015 10:22 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Tomu samozřejmě věřím, prakticky každý DVCS backend poskytuje prostředky ke všemu, co se dá s Gitem dělat, to ovšem není ani dostatečný důvod zvolit jiný tool, ani dostatečný důvod ho považovat pro danou úlohu za rovnocenný.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    9.4.2015 11:13 jos
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    prakticky každý DVCS backend poskytuje prostředky ke všemu, co se dá s mercurialem dělat, to ovšem není ani dostatečný důvod zvolit jiný tool, ani dostatečný důvod ho považovat pro danou úlohu za rovnocenný.

    jasně, sem jen anonymní idiot a ty ho máš většího, snad jako omluva bude stačit tohle video
    pavlix avatar 9.4.2015 11:37 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    prakticky každý DVCS backend poskytuje prostředky ke všemu, co se dá s mercurialem dělat, to ovšem není ani dostatečný důvod zvolit jiný tool, ani dostatečný důvod ho považovat pro danou úlohu za rovnocenný.
    Souhlasím, vždyť jsem psal prakticky to samé, jen s jinou implementací téhož konceptu.
    jasně, sem jen anonymní idiot
    To slova tvá jsou.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    7.4.2015 15:14 luky
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Dokud jsem Git používal jako nástroj k označování změn, aniž bych ty změny cíleně připravoval jako patche nebo commity do správy verzí, tak by mi to bylo dost jedno a stejně dobře bych používal jakýkoli jiný DVCS.
    My pouzivali hg a pamatuji si, jak to bylo neskutecne pomale a sralo se to. Mozna se to dalo na projekt s par soubory, ale na neco vetsiho to bylo zlo.
    7.4.2015 16:37 tacoberu | skóre: 6
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    To bude spíše rukama.

    Mercurial je oproti Gitu mnohem čitelnější.

    Jako jeho největší nevýhodu považuji jeho práci s branchema. Že jsou obravdu neměnné, a táhnou se skrz commity - což ne vždy vyhovuje.
    7.4.2015 17:53 luky
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Rychlost rukama nebude, mame v repu kernel, zakladni gnu userpsace + nejaky vlastni veci a po prechodu na git se vsechno zrychlylo mnohem znatelneji, nez kdyz jsem nafasoval novej pocitac.
    8.4.2015 12:38 tacoberu | skóre: 6
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Pardon, narážel jsem na to "sralo se to". Rychlost nekomentuju.
    pavlix avatar 7.4.2015 19:10 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    To bude spíše rukama.

    Tak určitě. To je jako když kyknos psal, že jsem na navigaci určitě něco nastavil, abych ji pak mohl neúspěšně reklamovat. :D
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    xkucf03 avatar 7.4.2015 23:30 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Mercurial a větve
    Jako jeho největší nevýhodu považuji jeho práci s branchema. Že jsou obravdu neměnné, a táhnou se skrz commity - což ne vždy vyhovuje.

    Já to naopak považuji za jednu z jeho velkých výhod. BTW: Mercurial umí oba druhy větví – jak skutečné větve (pojmenovaná část stromu), tak i to, čemu Git říká branch (ve skutečnosti štítek/tag, který se průběžně posouvá).

    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    pavlix avatar 7.4.2015 23:44 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Mercurial a větve
    Co přesně tě vede k tomu, říkáš „skutečná větev“ adresáři/podstromu a nikoli pojmenované větvi software, tedy tomu proměnnému štítku?
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    xkucf03 avatar 7.4.2015 23:58 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Mercurial a větve

    Přijde mi celkem přirozené, že „větev“ je označením celé té větve a ne jen vrcholku, listu.

    adresáři/podstromu

    Adresáře (v souborovém systému) a větve (ve verzovacím systému) jsou něco úplně jiného, větve jdou napříč adresáři. Adresáře a větve splývaly možná tak v SVN. Adresáře ve smyslu klony jsou v podstatě třetím druhem větví (ale tam nejde až tak o to, že je to adresář – hlavně je to kompletní klon úložiště a obsahuje všechny jeho adresáře).

    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    pavlix avatar 8.4.2015 09:04 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Mercurial a větve
    Ať se dívám, jak se dívám, odpověď v tomto komentáři nenalézám, ale co se dá dělat.
    hlavně je to kompletní klon úložiště a obsahuje všechny jeho adresáře).
    Kompletní klon úložiště je záloha. Větev se opravdu dá chápat různě, ale přirozeně bych očekával, že bude představovat dočasnou či trvalou linii vývoje. Neříkám, že to musí být implementováno přesně tak jako v Gitu, ale přijde mi to přinejmenším velmi jednoduché a praktické.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    xkucf03 avatar 8.4.2015 21:24 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Mercurial a větve
    Ať se dívám, jak se dívám, odpověď v tomto komentáři nenalézám, ale co se dá dělat.
    • otázka: Co přesně tě vede k tomu, říkáš „skutečná větev“ adresáři/podstromu a nikoli pojmenované větvi software, tedy tomu proměnnému štítku?
    • odpověď: Přijde mi celkem přirozené, že „větev“ je označením celé té větve a ne jen vrcholku, listu.

    To první považuji prostě za „větev“, ale abych to v té větě odlišil od věci, které tu někteří také říkají „větev“ resp. „branch“, tak jsem přidal to „skutečnou“.

    To druhé považuji spíš za zvláštní případ štítku (oproti obyčejnému má navíc tu vlastnost, že se při vytvoření nové verze posouvá, jinak to není nic než štítek) a přijde mi trochu matoucí o tom mluvit jako o větvi.

    Větev se opravdu dá chápat různě, ale přirozeně bych očekával, že bude představovat dočasnou či trvalou linii vývoje.

    No právě – jenže to ten štítek (byť pohyblivý) nesplňuje, protože na základě něj nejsi schopný tu linii zrekonstruovat – nenese s sebou všechny potřebné informace.

    Aby nedošlo k mýlce: neříkám, že tyhle pohyblivé štítky jsou špatné, škodlivé nebo že by neměly existovat – to ne – mají a existuje pro ně smysluplné využití, jen prostě nejsou plnohodnotnou náhradou větví – je to úplně něco jiného. Je to asi jako pevný disk a RAMka nebo jako struktury seznam a mapa – každé z toho má svoje využití a jedno není plnohodnotnou náhradou toho druhého. Proto jsem rád, že Mercurial poskytuje oboje.

    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    pavlix avatar 8.4.2015 21:57 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Mercurial a větve
    Obávám se, že metaforu listu používáš úplně špatně, list je totiž přesně na opačné straně. Gitovské štítky i větve prostřednictvím referencí zahrnují commit, celou jeho historii a především kompletní stav adresářové struktury v celé jeho historii. Nejedná se tedy o náhradu větví, nýbrž o implementaci větví. Tudíž mi tvoje rozdělení na „skutečné“ a „neskutečné“ větve stále nedává smysl.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    8.4.2015 10:18 luky
    Rozbalit Rozbalit vše Re: Mercurial a větve

    Přijde mi celkem přirozené, že „větev“ je označením celé té větve a ne jen vrcholku, listu.

    A neni to v pripade stromu ekvivalentni - z korene do listu vede vzdy jen jedna vetev, proto urcenim listu urcim jednoznacne i tu vetev.
    8.4.2015 11:00 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Mercurial a větve
    On to ale není strom (v grafařském smyslu slova).
    pavlix avatar 8.4.2015 11:40 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Mercurial a větve
    On to dokonce musí být strom, vzhledem k tomu, že hash adresářového objektu v Gitu zahrnuje kryptografické hashe souborů a podadresářů. Při dobrých vlastnostech hashe nelze konstruovat grafy s cykly.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    8.4.2015 11:55 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Mercurial a větve
    Asi mluvíme každý o něčem jiném. Já mluvil o grafu generovaném relací rodič - potomek mezi jednotlivými commity. Merge commit má rodičů víc, takže nejde o strom. Jakmile ale akceptujeme, že větev nemusí být nutně lineární posloupnost commitů, tak to samozřejmě nevadí.
    8.4.2015 14:21 kralyk z abclinuxu | skóre: 29 | blog:
    Rozbalit Rozbalit vše Re: Mercurial a větve
    Asi mluvíme každý o něčem jiném. Já mluvil o grafu generovaném relací rodič - potomek mezi jednotlivými commity. Merge commit má rodičů víc, takže nejde o strom.
    Je to DAG.

    Což mimochodem platí i pro Mercurial, takže větev v Mercurialu není o nic lépe definovaná než v gitu, resp. lepší by bylo říct, že v gitu není definovaná o nic hůře ;-)
    pavlix avatar 8.4.2015 20:01 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Mercurial a větve
    Je to DAG.
    Pravda. Navíc to platí pro oba případy, tedy nezáleží na tom, zda diskuzi chápeš tak jako já nebo tak jako Michal, stejně jako pro celý gitovský object store.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    xkucf03 avatar 8.4.2015 21:29 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Mercurial a větve

    Právě že není. Jednak to není strom, jak už tu padlo. A jednak z listu/vrcholu nejsi schopný dohledat celou tu větev, rozpoznat hranice mezi větvemi a rozlišit, co je „kmen“ a co jeho „větev“.

    Je to např. takhle?

         /--------c
    a---*------b
    

    a nebo takhle?

    a---*---------c
         \-----b
    

    Když znáš jen vrcholy resp. body a,b,c, tak to nejde rozlišit.

    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    8.4.2015 21:50 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Mercurial a větve
    z listu/vrcholu nejsi schopný dohledat celou tu větev

    Jsem. Do větve patří všechno, co z příslušného commitu dostanu, když půjdu po rodičích. Jak už jsem psal, není to obecně lineární posloupnost commitů, ale to je jen jedna z věcí, na které je potřeba si zvyknout.

    rozpoznat hranice mezi větvemi

    To byste musel nejdřív nadefinovat, co to ta hranice má být.

    rozlišit, co je „kmen“ a co jeho „větev“

    Trik je v tom, že to potřeba rozlišovat není. Ty dva obrázky jsou ekvivalentní a v obou mohu udělat merge b do c stejně jako merge c do b. Co víc, ať už "původní" větev byla kterákoli, pro oba merge existuje use case, kdy dávají velmi dobrý smysl. Takže proč rozlišovat, která je "hlavní" a která je "z ní odvětvená"?

    pavlix avatar 8.4.2015 22:05 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Mercurial a větve
    Já osobně vidím ve tvém komentáři dva isomorfní grafy.
    A jednak z listu/vrcholu nejsi schopný dohledat celou tu větev
    WTF?
    rozlišit, co je „kmen“ a co jeho „větev“.
    Metafora stromu v datových strukturách takto ovšem vůbec nefunguje a co je „kmen“ pokud vím záleží jen na workflow a vyjadřuje se (dočasným) pojmenováním těch větví na dobu, kdy to rozlišovat potřebuješ. Obávám se, že tady v diskuzi ještě nepadla ani definice větve, která by něco takového vyžadovala, takže by bylo fajn takovou definici uvést, ať si na ni člověk může alespoň udělat názor.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    8.4.2015 22:49 kralyk z abclinuxu | skóre: 29 | blog:
    Rozbalit Rozbalit vše Re: Mercurial a větve
    Když znáš jen vrcholy resp. body a,b,c, tak to nejde rozlišit.
    V Gitu se to bere tak, že větev a je tvořena všemy commity od počátku po a, b od počátku po b, atd. Tzn. jestliže v tom tvém grafu je a počátek (init) a, pak větev c tvoří commity a..c a větev b commity a..b, tzn. ten úsek od a po to rozvojení je společný oběma vetvím.

    V Mercurialu to AFAIK tak není - ie. ten úsek a..rozdvojení bude patřit jedný nebo druhý, ale osobně mi to nepřijde jako podstatné. Byl by nějaký příklad / use case, kdy to je užitečný?
    7.4.2015 19:12 sid
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Ano preto v nom bol openoffice a java napr. Povedal by som ze problem bol asi u vas.
    8.4.2015 11:14 jos
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    mě příde že v současnosti je úzký hrdlo obvykle filesystém, mezi klonem na přisambeným disku ve widlích a klonem na lokálním disku v linuxu je propastnej rozdíl i dneska
    9.4.2015 14:25 MarSik
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Nezapomínejte na Arch - http://en.wikipedia.org/wiki/GNU_arch

    Měl trošku ulítlý způsob pojmenovávání repozitářů a větví (zdvojené pomlčky), ale fungoval slušně.
    17.4.2015 00:28 Martin Mareš
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Arch (TLA) jsem jednu dobu používal na vývoj pciutils a i na takhle malém projektu byl dost nepříjemně pomalý, takže jsem chvílemi uvažoval, jestli se nevrátit k CVS. Naštěstí mě brzy zachránil Git :)
    7.4.2015 11:11 mikro
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Ja som tu knihu cital uz davno, takze si skor vybavujem (stale platne) pravidla na pisanie funkcii, tried atd, proste taku architekturu pri programovani. Ak ale v 2004 doporucoval autor balit nieco do zipov ci kopirovat adresare, tak to je fakt smutne. SVN tu bolo uz 4 roky a CVS celu vecnost. Maju svoje nedostatky a limity, ale zipka / kopirovane adresare prekonavaju na mile daleko...
    Bystroushaak avatar 7.4.2015 12:22 Bystroushaak | skóre: 36 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Git slaví 10 let
    Ona ta kniha je hodně rozsáhlá (894 stránek). Autor zkusil pokrýt skoro všechno, takže skoro půlka je vata. Posledních cca 150 stránek se věnuje hodně právě práci v teamu, strukturování projektů a různé rady kolem toho. Hodně těch věcí tam právě naráží na neexistenci něčeho jako je GIT.

    Založit nové vláknoNahoru


    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.