abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 12:33 | IT novinky

    Na blogu Raspberry Pi byla představena rozšiřující deska Raspberry Pi AI HAT+ 2 s akcelerátorem Hailo-10 a 8 GB RAM. Na rozdíl od předchozí Raspberry Pi AI HAT+ podporuje generativní AI. Cena desky je 130 dolarů.

    Ladislav Hagara | Komentářů: 0
    dnes 12:11 | Komunita

    Wikipedie slaví 25. výročí svého založení. Vznikla 15. ledna 2001 jako doplňkový projekt k dnes již neexistující encyklopedii Nupedia. Doména wikipedia.org byla zaregistrována 12. ledna 2001. Zítra proběhne v Praze Večer svobodné kultury, který pořádá spolek Wikimedia ČR.

    Ladislav Hagara | Komentářů: 0
    dnes 04:44 | Nová verze

    Po více než dvou letech od vydání předchozí verze 2.12 byla vydána nová stabilní verze 2.14 systémového zavaděče GNU GRUB (GRand Unified Bootloader, Wikipedie). Přehled novinek v souboru NEWS a v aktualizované dokumentaci.

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

    Google Chrome 144 byl prohlášen za stabilní. Nejnovější stabilní verze 144.0.7559.59 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 10 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře (YouTube).

    Ladislav Hagara | Komentářů: 2
    dnes 01:55 | Humor

    Microsoft zveřejnil zdrojový kód XAML Studia a uvolnil ho pod MIT licencí. XAML Studio je nástroj ze světa Windows, určený pro tvorbu uživatelského rozhraní aplikací pomocí XAML (Extensible Application Markup Language). Stalo se tak zhruba po osmi letech od prvního prohlášení Microsoftu, že se tento kód chystá zveřejnit.

    NUKE GAZA! 🎆 | Komentářů: 0
    dnes 01:44 | Zajímavý projekt

    TimeCapsule, 'časová kapsle', je jazykový model trénovaný výhradně na datech z určitých míst a časových období, aby se tak napodobila autentická slovní zásoba, způsob vyjadřování a názory dané doby. Na Hugging face jsou k dispozici modely natrénované na historických textech dostupných v oblasti Londýna mezi lety 1800 až 1875.

    NUKE GAZA! 🎆 | Komentářů: 2
    včera 17:55 | Nová verze

    Radicle byl vydán ve verzi 1.6.0 s kódovým jménem Amaryllis. Jedná se o distribuovanou alternativu k softwarům pro spolupráci jako např. GitLab.

    Ladislav Hagara | Komentářů: 0
    včera 13:22 | Upozornění

    Zemřel Scott Adams, tvůrce komiksových stripů Dilbert parodujících pracovní prostředí velké firmy.

    Ladislav Hagara | Komentářů: 3
    včera 13:00 | Nová verze

    Sdružení CZ.NIC vydalo novou verzi Knot Resolveru (6.1.0). Jedná se o první vydanou stabilní verzi 6, která je nyní oficiálně preferovanou a doporučovanou verzí, namísto předešlé verze 5. Více o Knot Resolveru 6 je možné se dočíst přímo v dokumentaci.

    VSladek | Komentářů: 2
    včera 01:22 | Nová verze

    Byl vydán Linux Mint 22.3 s kódovým jménem Zena. Podrobnosti v přehledu novinek a poznámkách k vydání. Vypíchnout lze, že nástroj Systémová hlášení (System Reports) získal mnoho nových funkcí a byl přejmenován na Informace o systému (System Information). Linux Mint 22.3 bude podporován do roku 2029.

    Ladislav Hagara | Komentářů: 1
    Které desktopové prostředí na Linuxu používáte?
     (14%)
     (5%)
     (0%)
     (8%)
     (19%)
     (3%)
     (6%)
     (3%)
     (11%)
     (44%)
    Celkem 442 hlasů
     Komentářů: 12, poslední včera 21:12
    Rozcestník

    Dotaz: Ako správne používať stable branch v git-e?

    6.9.2020 13:29 rastos | skóre: 63 | blog: rastos
    Ako správne používať stable branch v git-e?
    Přečteno: 396×

    Zistil som, že vlastne neviem používať git tak, ako by som potreboval :-( Chcem vyrobiť branch a do toho branch-u pridávať len bugfixy zatiaľ čo do master vetvy pôjdu aj bugfixy aj nové feature.

    Graficky by to vyzeralo nejako takto:
           B1<-B2<-B3                      B3<-B4
          /                               /
    ...<-R1<-F1<-F2<-B1<-F3<-B2<-F4<-F5<-R2<-F6<-B3<-B4<-F7...
    
    S tým, že:
    - R1, R2 sú momenty, kedy bol urobený release nejakej verzie. Túto verziu dostane zákazník, a ďalej bude dostávať len bugfixy až kým nedostane novší release
    - B1, B2, ... B4 sú bugfixy, ktoré majú v branch-i/branch-och aj v master
    - F1, F2, ... F7 sú nové feature, ktoré sú commitnuté len v master branchi.

    Nie je správne urobiť merge, pretože tým by sa mi do branch-u dostali aj feature, ktoré som commitol do master. To isté rebase.
    Robiť cherrypick, mi nepríde vhodné, pretože jeden bugfix môže pozostávať z viacerých commitov, ktoré možno ani nemusia ísť po sebe.

    Tak ako to vlastne robiť správne?

    Odpovědi

    6.9.2020 14:48 Bherzet | skóre: 19 | blog: Bherzetův blog
    Rozbalit Rozbalit vše Re: Ako správne používať stable branch v git-e?
    Bugfix stejného problému může v různých verzích vypadat jinak, takže to žádné hezké řešení nemá. Prostě mít větev pro master a pak pro každou verzi. Bugfixy se dělají v masteru a cherry-pickují do jednotlivých verzí (samozřejmě to musíš pokaždé znovu otestovat a případně upravit). Na větší bugfixy bych si radši dělal samostatnou větev a pak z ní udělal buď jeden commit, nebo jí mergnul.
    xkucf03 avatar 6.9.2020 17:00 xkucf03 | skóre: 50 | blog: xkucf03
    Rozbalit Rozbalit vše Verzovací systémy a větve

    On asi neexistuje jediný „správný“ systém. Když budeš hledat „git workflow“, tak najdeš řadu různých způsobů – každý to dělá trochu jinak.

    Já tedy používám primárně Mercurial a následující systém:

    • Neexistuje žádná větev master/default/stable/devel ani nic podobného.
    • Používá se sémantické verzování.
    • Větve jsou pojmenované podle major verze tzn. třeba v_1, v_2 atd.
    • Vydané verze jsou označeny štítkem (tag) opět dle sémantického verzování, např. v2.0.0, v2.1.0 (tzn. štítky a větve se poznají i podle názvu – větve mají v názvu podtržítko, štítky ne).
    • Když se dělá oprava (hotfix, patch nebo jak tomu kdo říká), tak se z příslušného štítku (např. v2.1.0) odkloní nová větev (např. v_2.1) a v ní se vyvíjí a vydané opravy se označují štítkem typu v2.1.1, v2.1.2 atd.
    • Opravy se propagují vždy jedním směrem – nahoru – tzn. dělá se merge z větve v_2.1 do v_2, případně pak do v_2.2, v_3, v_3.1 atd. (pokud existují).
    • Pokud se má dostat nějaká nová funkcionalita do starších větví (backport), tak to jde přes cherry-pick. Běžné verzovací systémy to bohužel líp neumí, ale naštěstí to není moc časté.
    • Historie je posvátná a nesmí se nikdy měnit. Vždy bychom měli být schopní reprodukovat stav ke kterémukoli bodu v minulosti (proto mám taky radši Mercurial než Git). Tohle pravidlo samozřejmě neplatí pro privátní větve jednotlivých vývojářů – tam se běžně dělá rebase, amend nebo libovolné jiné úpravy historie.
    • Zda vyvíjet každou funkcionalitu v samostatné větvi (feature branch) je ortogonální otázka a nesouvisí se systémem popsaným výše – tahle větev se prostě odkloní z jiné větve, do které pak změna přijde, případně se chvíli udržuje bokem, dá se přesadit jinam… Obecně považuji za nejlepší vyvíjet každý požadavek (označen číslem z Bugzilly nebo podobného systému) v samostatné větvi. Pak už je ze samotných větví vidět, na základě jakého požadavku byla daná změna provedena. Nicméně někdy je to zbytečně byrokratické, takže je na zvážení, zda to tak dělat vždy nebo jen u větších zásahů do kódu.
    • Problém nastává asi jen v případě, kdy je vývoj veden trochu chaoticky a nejdřív se zadá nějaká práce a pak se na poslední chvíli rozhodne, že se to odloží a dá až do příští verze. Tenhle problém ale není specifický pro systém popsaný výše. Úpravy se pak musí buď revertovat a aplikovat znova v jiné větvi. Nebo se tomu dá přecházet tím, že sadu změn udržujeme v samostatné větvi (viz předchozí bod).
    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

    Založit nové vláknoNahoru

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

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