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í
×
    včera 23:22 | Nová verze

    Hudební přehrávač Amarok byl vydán v nové major verzi 3.0 postavené na Qt5/KDE Frameworks 5. Předchozí verze 2.9.0 vyšla před 6 lety a byla postavená na Qt4. Portace Amaroku na Qt6/KDE Frameworks 6 by měla začít v následujících měsících.

    Ladislav Hagara | Komentářů: 2
    včera 21:44 | Komunita

    Ubuntu 24.10 bude Oracular Oriole (věštecká žluva).

    Ladislav Hagara | Komentářů: 6
    včera 20:22 | Nová verze

    Byla vydána nová verze 2.45.0 distribuovaného systému správy verzí Git. Přispělo 96 vývojářů, z toho 38 nových. Přehled novinek v příspěvku na blogu GitHubu a v poznámkách k vydání. Vypíchnout lze počáteční podporu repozitářů, ve kterých lze používat SHA-1 i SHA-256.

    Ladislav Hagara | Komentářů: 0
    včera 13:33 | IT novinky

    Před 25 lety, ve čtvrtek 29. dubna 1999, byla spuštěna služba "Úschovna".

    Ladislav Hagara | Komentářů: 0
    včera 01:00 | Nová verze

    Byla vydána nová verze 24.04.28 s kódovým názvem Time After Time svobodného multiplatformního video editoru Shotcut (Wikipedie) a nová verze 7.24.0 souvisejícího frameworku MLT Multimedia Framework. Nejnovější Shotcut je vedle zdrojových kódů k dispozici také ve formátech AppImage, Flatpak a Snap.

    Ladislav Hagara | Komentářů: 0
    28.4. 16:33 | Nová verze Ladislav Hagara | Komentářů: 0
    28.4. 03:22 | Zajímavý článek

    V aktuálním příspěvku na blogu počítačové hry Factorio (Wikipedie) se vývojář s přezývkou raiguard rozepsal o podpoře Linuxu. Rozebírá problémy a výzvy jako přechod linuxových distribucí z X11 na Wayland, dekorace oken na straně klienta a GNOME, změna velikosti okna ve správci oken Sway, …

    Ladislav Hagara | Komentářů: 0
    28.4. 00:11 | Nová verze

    Rakudo (Wikipedie), tj. překladač programovacího jazyka Raku (Wikipedie), byl vydán ve verzi #171 (2024.04). Programovací jazyk Raku byl dříve znám pod názvem Perl 6.

    Ladislav Hagara | Komentářů: 7
    27.4. 17:44 | Nová verze

    Společnost Epic Games vydala verzi 5.4 svého proprietárního multiplatformního herního enginu Unreal Engine (Wikipedie). Podrobný přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    26.4. 17:11 | Nová verze

    Byl vydán Nextcloud Hub 8. Představení novinek tohoto open source cloudového řešení také na YouTube. Vypíchnout lze Nextcloud AI Assistant 2.0.

    Ladislav Hagara | Komentářů: 12
    KDE Plasma 6
     (75%)
     (8%)
     (2%)
     (15%)
    Celkem 884 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Skript pro kontinuální konverzi repozitáře z bzr do git

    20.3.2011 02:44 | Přečteno: 1027× | Za vším hledej Linux | Výběrový blog | poslední úprava: 21.3.2011 11:15

    Při sepisování manuálu pro GRUB2 na naší wiki, jsem definitivně zlomil nad jeho vývojáři hůl, zatratil je do horoucích pekel a v návalu zoufalství se poohlédnul po nějakém nástroji, který by slušně konvertoval repozitory z bazaaru do gitu.

    Možná že nějaký takový slušný tool existuje, ale já na něj nenarazil. Bazaar má nějaké rozšíření, které mu umožňuje spolupracovat s git repozitářem, ale já potřeboval něco trochu jiného. Nástroj, který by naopak bzr repozitář převedl na git, aniž bych přitom přišel o veškerou historii.

    Nejdříve jsem zkoušel tailor. Jenže to je jednak další verzovací systém mezi a pak.. když jsem zkoušel konvertovat repozitář GRUB2, tak v půlce zkolaboval a konečná. Pak jsem narazil na skript Henrika Nilssena. Prima. Ten fungoval jak jsem čekal. Jenže ouha! Po přerušení začal git repozitář ládovat znova. No uznejte. Mám čekat pokaždé přes tři hodiny, než se provede konverze na aktuální verzi? To fakt ne. Také měl ten skript další neduhy - kupř. neodstraňoval duplicity, takže git repozitář pro GRUB2 měl po konverzi téměř 750MB(!).

    No, nebudu napínat. Skript jsem trochu dopsal. Zároveň k němu přidal i pár souborů, ať se z toho dá udělat debianí balík. A stejně jako konverovaný repozitář grub2, jej dal - pod názvem bzr2git na náš git server.

    Nedělní update..

    Především bych chtěl poděkovat za nakopnutí správným směrem uživateli chrono, neboť o možnosti využít balíku bzr-fastimport i pro export repository jsem nevěděl.

    Jak už to tak bývá, celá věc je natolik triviální, že není vůbec nutné na to používat nějaký extra skript. stačí jen vědět jak na to, že? ;-) Takže pro budoucí čtenáře: Git repozitář se skriptem bzr2git jsem sice ponechal veřejně dostupný, ale pouze proto, kdyby někdo - podobně jako já včera - řešil jak zabalit svůj vlastní shellový skript do deb balíku. Konvertovat bzr repozitáře je mnohem jednodušší a rychlejší následujícím způsobem (demonstruji na výše zmíněném repozitáři pro grub2):

    user@stroj:~$ bzr branch http://bzr.savannah.gnu.org/r/grub/trunk/grub
    user@stroj:~$ ls
    grub
    user@stroj:~$ mkdir grub-git
    user@stroj:~$ pushd grub-git
    ~/grub-git ~
    user@stroj:~/grub-git$ bzr fast-export --plain -r 1..15 ../grub | git fast-import
    

    Pokud chcete narvat do gitu repozitář celý se vším všudy, tak stačí vypustit parametr -r. Při aktualizaci git repozitáře z bzr se nemusíte obávat, že by při importu došlo k nějakým duplicitám. Také můžete pustit příkaz bez udání revize. Vymezením rozsahu revize si však můžete do gitu převést jen to co vás zajímá a krom toho nebude s importem problém, pokud máte v git repozitáři už nějaké své větve. Takže jen doplním jak zjistit v bzr číslo poslední revize a číslo poslední revize odpovídající té, která byla naposled naimportovaná do gitu..

    user@stroj:~$ bzr log -r revno:-1.. http://bzr.savannah.gnu.org/r/grub/trunk/grub | grep revno
    revno: 3096
    user@stroj:~$ pushd grub-git
    ~/grub-git ~
    user@stroj:~/grub-git$ git checkout master
    Switched to branch 'master'
    user@stroj:~/grub-git$ popd
    user@stroj:~$ LASTTIMESTAMP="$(git log -1 | grep Date 2> /dev/null)"
    user@stroj:~$ TIMESTAMP="${LASTTIMESTAMP#* }"
    user@stroj:~$ TIMEREVISION="$(date --date="${TIMESTAMP%%\ +*}" "+%F %T")"
    user@stroj:~$ pushd grub
    ~/grub ~
    user@stroj:~/grub$ bzr log -r date:"$TIMEREVISION" | grep revno | awk '{print $2}'
    3096
    
           

    Hodnocení: 80 %

            špatnédobré        

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

    Komentáře

    Vložit další komentář

    20.3.2011 10:02 chrono
    Rozbalit Rozbalit vše Re: Skript pro kontinuální konverzi repozitáře z bzr do git
    Nebolo by na začiatku jednoduchšie naklonovať si ten bzr repozitár a použiť fast-export (a potom fast-import v git)?
    20.3.2011 10:46 Aleš Kapica | skóre: 51 | blog: kenyho_stesky | Ostrava
    Rozbalit Rozbalit vše Re: Skript pro kontinuální konverzi repozitáře z bzr do git
    Bylo by možno nějak konkrétněji? Kupř. uvést příklad. A dá se pak ten git repozitář průběžně aktualizovat stejně jako je aktualizován ten bzr?
    20.3.2011 11:00 Aleš Kapica | skóre: 51 | blog: kenyho_stesky | Ostrava
    Rozbalit Rozbalit vše Re: Skript pro kontinuální konverzi repozitáře z bzr do git
    Vypadá to dobře. Kdybych s tím měl zkušenost dřív, pravděpodobně bych to použil jako základ toho skriptu. Jak se říká - nikdy není pozdě, a lépe pozdě než nikdy.
    21.3.2011 08:57 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
    Rozbalit Rozbalit vše Re: Skript pro kontinuální konverzi repozitáře z bzr do git
    Co vlastně dělá bazaar tak strašného?
    When your hammer is C++, everything begins to look like a thumb.
    21.3.2011 08:59 Aleš Kapica | skóre: 51 | blog: kenyho_stesky | Ostrava
    Rozbalit Rozbalit vše Re: Skript pro kontinuální konverzi repozitáře z bzr do git
    Nic. Jen nemá tak pěkné nástroje jako git. A taky - z mého subjektivního hlediska - mnohem pomaleji zjišťuje aktualizace.
    21.3.2011 21:28 Jan Včelák | skóre: 28 | blog: Fcelda
    Rozbalit Rozbalit vše Re: Skript pro kontinuální konverzi repozitáře z bzr do git

    Založit nové vláknoNahoru

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