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 04:00 | IT novinky

    Java má dnes 30. narozeniny. Veřejnosti byla představena 23. května 1995.

    Ladislav Hagara | Komentářů: 0
    včera 21:55 | IT novinky

    1. července Mozilla vypne službu Fakespot pro detekci podvodných recenzí v internetových obchodech. Mozilla koupila Fakespot v květnu 2023.

    Ladislav Hagara | Komentářů: 1
    včera 21:33 | IT novinky

    8. července Mozilla vypne službu Pocket (Wikipedie) pro ukládání článků z webu na později. Do 8. října si uživatelé mohou vyexportovat data. Mozilla koupila Pocket v únoru 2017. Několik měsíců byl Pocket integrovanou součástí Firefoxu.

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

    Turris OS má aktuálně problém s aktualizací související s ukončením podpory protokolu OCSP u certifikační autority Let's Encrypt.

    Ladislav Hagara | Komentářů: 2
    včera 04:00 | Zajímavý článek

    Nevidomý uživatel Linuxu v blogu upozornil na tristní stav přístupnosti na linuxovém desktopu (část první, druhá, závěr), přičemž stížnosti jsou podobné jako v roce 2022. Vyvolal bouřlivou odezvu. Následně např. Georges Stavracas shrnul situaci v GNOME. Debata o jiném aspektu přístupnosti, emulaci vstupu pod Waylandem, také proběhla na Redditu.

    Fluttershy, yay! | Komentářů: 8
    včera 03:00 | Komunita

    DevConf.CZ 2025, tj. open source komunitní konference sponzorovaná společností Red Hat, proběhne od 12. do 14. června v Brně na FIT VUT. Publikován byl program a spuštěna byla registrace.

    Ladislav Hagara | Komentářů: 0
    21.5. 18:22 | Nová verze

    Byla vydána nová major verze 28.0 programovacího jazyka Erlang (Wikipedie) a související platformy OTP (Open Telecom Platform, Wikipedie). Přehled novinek v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    21.5. 13:11 | Zajímavý článek

    Český telekomunikační úřad zveřejnil Výroční zprávu za rok 2024 (pdf), kde shrnuje své aktivity v loňském roce a přináší i základní popis situace na trhu. Celkový objem přenesených mobilních dat za rok 2024 dosáhl dle odhadu hodnoty přibližně 1,73 tis. PB a jeho meziroční nárůst činí zhruba 30 %. Průměrná měsíční spotřeba dat na datovou SIM kartu odhadem dosáhla 12,5 GB – v předchozím roce šlo o 9,8 GB.

    Ladislav Hagara | Komentářů: 13
    21.5. 12:33 | IT novinky

    Z novinek představených na Google I/O 2025: Přehledy od AI (AI Overviews) se rozšiřují do dalších zemí. Užitečné, syntetizované přehledy od generativní AI jsou nově k dispozici i českým uživatelům Vyhledávače.

    Ladislav Hagara | Komentářů: 0
    21.5. 11:44 | IT novinky

    Šestice firem označovaných jako „MAMAAN“ – tedy Meta (Facebook, Instagram), Alphabet (Google), Microsoft, Apple, Amazon a Netflix – je zodpovědná za více než padesát procent světového internetového provozu. Dalšími velkými hráči jsou TikTok a Disney+. Společně tak zásadně určují podobu digitálního prostředí, spotřebitelského chování i budoucích trendů v oblasti technologií. I přesto, že se podíl těchto gigantů od roku 2023 o něco snížil, jejich dominantní postavení zvyšuje volání po regulaci.

    Ladislav Hagara | Komentářů: 6
    Jaký je váš oblíbený skriptovací jazyk?
     (55%)
     (28%)
     (8%)
     (3%)
     (0%)
     (0%)
     (6%)
    Celkem 78 hlasů
     Komentářů: 6, poslední včera 14:43
    Rozcestník

    Jednoduché patchování v praxi

    8.6.2005 21:07 | Přečteno: 1940× | Linux | poslední úprava: 8.6.2005 21:11

    Právě jsem si trochu vyzkoušel známé příkazy diff a patch pěkně v praxi. Jak jednoduše na to, tak aby to opravdu fungovalo?

    Jednoduše řečeno, diff zkoumá rozdíly s souborech (difference) a patch provádí na základě těchto rozdílů záplatu (patch). Nejčastěji se s tím setkáme u patchů do jádra, nebo do jiných programů, ale dá se to dobře využít téměř na jakékoli textové soubory, které se hodně mění a my o tom chceme mít přehled.

    [pozadí] Mám tu lokalizaci jednoho známého publikačního systému (ano je Wordpress) a chci do ní aplikovat nové bezpečnostní záplaty. Před nějakým časem jsem ručně mergoval změny mezi verzí 1.5 a 1.5.1 do 1.5-cz za vzniku 1.5.1-cz. Možná to zní složitě, ale je to tak. A je to pracné. Tady moc patch a diff použít nešel, ale možná, že by mi ušetřil trochu práce. Jenže než jsem stihnul vydat 1.5.1-cz, objevily se bezpečností updaty - 1.5.1.1 a 1.5.1.2. Tentokrát jsem se rozhodl použít patch.[/pozadí]

    Takže cílem bylo zanést změny mezi 1.5.1 a 1.5.1.2 do 1.5.1-cz za vzniku 1.5.1.2-cz. Ok? Nejdřív si tedy uděláme diff mezi 1.5.1 a 1.5.1.2:

    
    wordpress$ diff -ruN 1.5.1 1.5.1.2 > 1.5.1.2.diff
    

    Parametry: -r = rekurzivně prohledá podadresáře. -u = unified format, a defaultní počet (3) okolních řádků (jako kontext). -N = neexistující soubory bereme jako prázdné.

    Poté si zkopírujeme 1.5.1-cz do 1.5.1.2-cz a přesuneme se tam. Pak provedeme samotný patch:

    
    1.5.1.2-cz$ patch -p1 --verbose < ../1.5.1.2.diff &> ../patch.log
    

    Parametry: -p1 = počet lomítek na začátku, které se uříznou. --verbose = ukecaný výstup. Ještě pro testování můžeme použít --dry-run = neprovádět akci doopravdy, jen ukázat, co to udělá.

    Patch načítá ze standardního vstupu, proto <. Jinak můžeme použít rouru, máme-li diff soubor komprimovaný: bzcat neco.diff | patch -p1. Nakonec si oba výstupy šoupnem do souboru patch.log pomocí &>.

    Tím se provede sloučení změn, neboli merge. Občas se však vyskytnou kolize, které sám patch neumí vyřešit a nechá to na nás. Dá nám to alespoň vědět podobnými hláškami:

    Hunk #1 FAILED at 2.
    1 out of 1 hunk FAILED -- saving rejects to file wp-content/themes/default/header.php.rej

    Zanechá nám ještě soubory *.rej (jako rejected), kde se dozvíme, s čím si patch neví rady a co musíme sloučit ručně.

    Pokud máte rádi trochu pohodlnější práci (nemyslím zrovna hromadné zpracování pomocí automatických skriptů), zkuste KDiff3, což je velice povedený program, který umí hodně, pokud jde o diffování a patchování v grafickém prostředí.

    To by k jednoduchému příkladu použití patche a diffu snad stačilo. Více informací a příkladů použití najdete jako obvykle v manuálech, howto a jiných článcích. Možná tu mám někde chybu(y), tak se nehňevejte.

    Odkazy:

           

    Hodnocení: -

    zatím nehodnoceno
            špatnédobré        

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

    Komentáře

    Vložit další komentář

    8.6.2005 21:10 VícNežNic | skóre: 42 | blog: Spáleniště | Ne dost daleko
    Rozbalit Rozbalit vše Kdiff3
    Pokud si někdo, tak jako já, nemá v úmyslu nechat do systému nakvartýrovat Qt, tak může zkusit třeba diffovátko, které je součástí Xfce :-)
    Copak toho není dost?
    Bohumír Zámečník avatar 8.6.2005 21:14 Bohumír Zámečník | skóre: 19 | blog: bohous
    Rozbalit Rozbalit vše Re: Kdiff3
    Třeba... těch grafickejch udělátek k tomu je dost, ale kdiff3 mi přišel tady na Mandraku v KDE nejrychleji pod ruku. Ale pokud má jít o (polo)automatické zpracování, není na holý diff/patch.
    "Dobrý den pane, nevíte, která bije?!"
    8.6.2005 22:13 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
    Rozbalit Rozbalit vše Re: Kdiff3
    používám vimdiff, teda většinou jeho grafickou podobu - gvimdiff a nemusím řešit nějaké kněco nebo xfce
    -- Nezdar není hanbou, hanbou je strach z pokusu.
    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.