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í
×
    včera 21:00 | IT novinky Ladislav Hagara | Komentářů: 0
    včera 18:33 | Nová verze

    Realtimová strategie Warzone 2100 (Wikipedie) byla vydána ve verzi 4.6.0. Podrobný přehled novinek, změn a oprav v ChangeLogu na GitHubu. Nejnovější verzi Warzone 2100 lze již instalovat také ze Snapcraftu a Flathubu.

    Ladislav Hagara | Komentářů: 1
    včera 12:22 | IT novinky

    Polské vývojářské studio CD Projekt Red publikovalo na Printables.com 3D modely z počítačové hry Cyberpunk 2077.

    Ladislav Hagara | Komentářů: 0
    včera 11:44 | Pozvánky

    Organizátoři konference LinuxDays 2025 vydali program a zároveň otevřeli registrace. Akce se uskuteční 4. a 5. října na FIT ČVUT v pražských Dejvicích, kde vás čekají přednášky, workshopy, stánky a spousta šikovných lidí. Vstup na akci je zdarma.

    Petr Krčmář | Komentářů: 4
    8.9. 22:00 | IT novinky

    Uživatelé komunikátoru Signal si mohou svá data přímo v Signalu bezpečně zálohovat a v případě rozbití nebo ztráty telefonu následně na novém telefonu obnovit. Zálohování posledních 45 dnů je zdarma. Nad 45 dnů je zpoplatněno částkou 1,99 dolaru měsíčně.

    Ladislav Hagara | Komentářů: 0
    8.9. 18:44 | Zajímavý článek

    Server Groklaw, zaměřený na kauzy jako právní spory SCO týkající se Linuxu, skončil před 12 lety, resp. doména stále existuje, ale web obsahuje spam propagující hazardní hry. LWN.net proto v úvodníku připomíná důležitost zachovávání komunitních zdrojů a upozorňuje, že Internet Archive je také jen jeden.

    🇵🇸 | Komentářů: 5
    8.9. 14:22 | Nová verze

    Jakub Vrána vydal Adminer ve verzi 5.4.0: "Delší dobu se v Admineru neobjevila žádná závažná chyba, tak jsem nemusel vydávat novou verzi, až počet změn hodně nabobtnal."

    Ladislav Hagara | Komentářů: 2
    8.9. 13:22 | IT novinky

    V Německu slavnostně uvedli do provozu (en) nejrychlejší počítač v Evropě. Superpočítač Jupiter se nachází ve výzkumném ústavu v Jülichu na západě země, podle německého kancléře Friedricha Merze otevírá nové možnosti pro trénování modelů umělé inteligence (AI) i pro vědecké simulace. Superpočítač Jupiter je nejrychlejší v Evropě a čtvrtý nejrychlejší na světě (TOP500). „Chceme, aby se z Německa stal národ umělé inteligence,“ uvedl na

    … více »
    Ladislav Hagara | Komentářů: 16
    7.9. 04:11 | Komunita

    V Berlíně probíhá konference vývojářů a uživatelů desktopového prostředí KDE Plasma Akademy 2025. Při té příležitosti byla oznámena alfa verze nové linuxové distribuce KDE Linux.

    Ladislav Hagara | Komentářů: 1
    6.9. 17:11 | Nová verze

    Byl vydán Debian 13.1, tj. první opravná verze Debianu 13 s kódovým názvem Trixie a Debian 12.12, tj. dvanáctá opravná verze Debianu 12 s kódovým názvem Bookworm. Řešeny jsou především bezpečnostní problémy, ale také několik vážných chyb. Instalační média Debianu 13 a Debianu 12 lze samozřejmě nadále k instalaci používat. Po instalaci stačí systém aktualizovat.

    Ladislav Hagara | Komentářů: 2
    Pro otevření více webových stránek ve webovém prohlížečí používám
     (83%)
     (7%)
     (2%)
     (3%)
     (3%)
     (2%)
    Celkem 157 hlasů
     Komentářů: 11, poslední 4.9. 16:12
    Rozcestník

    Dotaz: GitHub organizace projektu

    17.9.2020 11:09 Jack Hokus | skóre: 34 | blog: LostHeaven
    GitHub organizace projektu
    Přečteno: 385×
    Ahoj,

    mám rozpracovaný pokus o překlad delšího textu z angličtiny. Zatím funguju tak, že mám text na svém webu. Rád bych začal používat systém pro správu verzí. Už dřív jsem si zřídil účet na GitHubu. Mám tam pár textů. Určených k tomu, abych si to trochu osahal. Nicméně, tenhle program umí spoustu věcí a dost se v tom ztrácím.

    Rád bych se Vás zeptal, jak použít GitHub pro práci na překladu textu.

    Zdroje: Kniha o Gitu

    Manuál
    http://www.jackhokus.cz/

    Řešení dotazu:


    Odpovědi

    Řešení 1× (Filip Jirsák)
    Heron avatar 17.9.2020 11:31 Heron | skóre: 53 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: GitHub organizace projektu
    Především, git a github jsou dvě samostatné věci.

    Git je nástroj na verzování a můžeš jej používat lokálně. To znamená v pracovním adresáři git init ., potom budeš měnit pracovní soubory, dáš git add soubor, git commit -m"Smysluplný popis provedených změn.". V git log potom přehledně uvidíš, co se v každé změně událo. Takto si můžeš lokálně verzovat libovolnou svou práci.

    V předchozím příkladu nám vznikl repositář. Každý git pracovní adresář je repositář. Repositáře můžeš clonovat (git clone) jak na lokálním systému, tak i vzdáleně. Přístup přes ssh funguje out of box. Takže si na svém serveru založíš repositář a clonuješ si jej na lokální stroj pomocí git clone user@server:repo na svůj stroj. Tímto máš současně data na dvou místech. Těchto repositářů je možné mít libovolné množství. Jen je potřeba před každou prací udělat git pull a po každé práci a commitu ještě git push.

    A tady se dostávám k githubu. GitHub je prostě jen správce repositářů. Jeden z mnoha. Poskytuje uživateli klikací přístup pro tvorbu vzdálených repositářů. Ale nejdřív je potřeba si projít znalostí práce s lokálními repy a osahat si git jako takový a ne se hned vrhnout na github.
    Řešení 1× (Filip Jirsák)
    Max avatar 17.9.2020 11:32 Max | skóre: 72 | blog: Max_Devaine
    Rozbalit Rozbalit vše Re: GitHub organizace projektu
    Ahoj,
    myslím si, že pro tvůj systém použití nemusíš nutně používat více větví, mergovat atd. Začni tak, že budeš prostě jen verzovat.
    Pokud máš projekt na githubu, tak začni tak, že si z něj uděláš lokální repo:
    git clone https://github.com/tvujlogin/tvujprojekt.git
    
    A následně si do adresáře můžeš nahrát své překlady a začít verzovat a posílat zpět na github:
    # vlezeme si do adresáře s projektem
    cd tvujprojekt
    
    # naharejeme si do něj překlady (soubory a adresáře)
    ...
    
    # přidáme nové soubory do gitu
    git add .
    
    # provedeme commit do lokální working copy a samozřejmě ke commitu dáme komentář
    git commit -m 'nove preklady yxz'
    
    # pushneme změny na github
    git push
    
    # push se zeptá na login a heslo do githubu
    
    Github umožňuje ověřování i pomocí klíčů a používání pro přenos ssh, nemusíš využívat tedy login a heslo.

    Samozřejmě nemusíš dělat push jen do githubu, ale můžeš posílat své změny do více git repositářů (nebude tvůj usecase, ale jen pro info). Tomu, kam jde push, se říká origin a seznam rep, kam to posíláš, získáš pomocí příkazu :
    git remote show origin
    
    * remote origin
      Fetch URL: https://github.com/tvujlogin/tvujprojekt.git
      Push  URL: https://github.com/tvujlogin/tvujprojekt.git
      HEAD branch: master
      Remote branch:
        master tracked
      Local branch configured for 'git pull':
        master merges with remote master
      Local ref configured for 'git push':
        master pushes to master (up to date)
    
    Jinak při každé změně překladu vždy použiješ tyto tři příkazy popsané výše, aby vše bylo v gitu jak u tebe, tak na githubu:
    git add .
    git commit -m 'poznamka ke commitu'
    git push
    
    Zdar Max
    Měl jsem sen ... :(
    Josef Kufner avatar 17.9.2020 11:50 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: GitHub organizace projektu
    Různé manuály a statické weby se dělají tak, že maš lokální Git repozitář s textem a dalšími materiály, kde pracuješ (git commit). Součástí těchto zdrojových materiálů je i skript (a konfigurační soubor), který sestaví požadovanou webovou prezentaci, PDF, nebo cokoliv chceš. Z tohoto repozitáře to pomocí git push nahraješ do veřejného repozitáře na Githubu, Gitlabu, nebo něčem takovém. Tam se pomocí nějakého CI nástroje (Continuous Integration) spustí v kontejneru ten skript a sestavená prezentace se nahraje na web (jak je napsáno v tom konfiguračním souboru). Je to trochu komplikované na nastavení, ale jakmile to funguje, tak to neskutečně šetří práci.

    Na webu pak bývají odkazy na repozitář, kde čtenáři mohou forknout repozitář, udělat úpravy a požádat o jejich začlenění. Pokud se ti nabídnuté změny líbí, zmáčkneš tlačítko "Merge", commity se přidají k těm tvým, CI sestaví aktualizovanou prezentaci a rovnou se to po chvilce samo objeví na webu.

    Pokud jsi někdy slyšel o generátorech statických webů, tak přesně takto se používají.
    Hello world ! Segmentation fault (core dumped)
    Heron avatar 17.9.2020 12:00 Heron | skóre: 53 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: GitHub organizace projektu
    Nic proti CI, ale tohle mi přijde kanón na vrabce. Používám jekyll, stačí si vytvořit Makefile se dvěma řádky (jekyll build, rsync na webserver) a je to. Kdybych chtěl, tak to můžu udělat jako git push hook (ale ne každou změnu chci hned vrážet na veřejný web)
    Josef Kufner avatar 17.9.2020 12:08 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: GitHub organizace projektu
    A když k tomu připíšeš ještě ten párřádkový konfigurační soubor pro CI, tak nemusíš řešit hook ani ručně spouštět make a nehrozí, že na to zapomeneš. CI je od toho, aby to hlídalo za tebe a ty jsi se nemusel starat. Navíc CI už je integrované a připravené univerzální řešení. Na Githubu nebo Gitlabu si beztak ten hook nenastavíš.

    Že to je kanón na vrabce ti to přijde jen kvuli tomu, že to má GUI a v pozadí běží služby, které odbavují úlohy. Ve skutečnosti je to velmi štíhlá a jednoduchá věc.
    Hello world ! Segmentation fault (core dumped)
    Heron avatar 17.9.2020 12:23 Heron | skóre: 53 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: GitHub organizace projektu
    Jasně, jenže to se bavíš o připraveném a centralizovaném řešení (počkej, až sem přijde Franta). Ono nainstalovat a spravovat svůj vlastní GitLab včetně CI workerů zase taková sranda není a taková Gitea vlastní CI vůbec nemá. Takže začátečníkovi bych radil spíše lokální řešení. Navíc nevím, jak github získá přístupové údaje k tomu webserveru, kam to ten worker má potom nahrát. Přece mu je nedáš / ten webserver může mít omezení pouze na tvé IP.
    Josef Kufner avatar 17.9.2020 12:40 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: GitHub organizace projektu
    Lokální řešení budeš mít tak jako tak. Ten skript (ať už makefile nebo shell skript) se musí pripravit bez ohledu na CI, jinak to je utrpení. Typicky takové skripty jsou žádoucí dva – jeden pro sestavení, druhý pro nahrání na server. Do CI se pak napíše spusť jeden a když projde, tak i ten druhý.

    Pokud používáš Github, tak pravděpodobně použiješ i další hostované služby na provoz webu, takže přístup se nastaví do proměnných v konfiguraci CI, které nejsou commitnuté do repozitáře. Na serveru pak vyhradíš ten přístup jen pro tu konkrétní věc (tj. jen SFTP či rsync pro konkrétní adresář), což u hostovaných služeb je výchozí stav. Alternativně můžeš nechat připravit balíček a po HTTP říct webu ať se aktualizuje (z pevně definovaného zdroje).

    Pokud máš vlastní server a vlastní hosting (VPS nebo domácí server), tak stačí shell runner, který to spustí pod vyhrazeným uživatelem, ale tam zas nechceš spouštět kód od cizích lidí. Na to už je potřeba si vyrobit pomíjivý kontejner.
    Hello world ! Segmentation fault (core dumped)
    17.9.2020 14:29 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: GitHub organizace projektu
    Pokud to má být jen statický web bez vazby na další služby, je nejjednodušší použít GitHub Pages, které jsou rovnou v GitHubu vestavěné. Pokud píše web rovnou v HTML+CSS (tj. není tam žádný překlad), jenom zveřejní repository přes GitHub Pages a má hotovo. Pokud tam je nějaký build proces, stačí říct, že se na GitHub Pages nemá zveřejnit kořenový adresář repository, ale třeba adresář /build. Lokálně pak spustí build, commit a push a web je publikován. Pro složitější web se pak vyplatí řešit build v rámci CI, ale pro začátek to není potřeba.
    17.9.2020 15:01 jiwopene | skóre: 31 | blog: Od každého trochu…
    Rozbalit Rozbalit vše Re: GitHub organizace projektu
    U takovéhle věci je CI zbytečně složité řešení, resp. není jednodušší. Místo řešení (Makefile + hook v Gitu), které běží lokálně a má minimum částí, kde se může rozbít, pak musíte používat software na jiném stroji, který případně výstup posílá dál (např. na webserver). Tím vzniká rovnou několik míst, kde tento systém může selhat a kde můžete udělat chybu. Další problémy mohou nastat, pokud toto řešení přestane vyhovovat – např. GitHub změní podmínky používání a bude Vám bránit v používání této služby, službu zpoplatní, GitHub přestane fungovat (výpadek) a budete potřebovat něco na poslední chvíli změnit – a budete se muset obejít bez jeho služeb.
    .sig virus 3.2_cz: Prosím, okopírujte tento text do vaší patičky.
    Josef Kufner avatar 17.9.2020 18:15 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: GitHub organizace projektu
    Věř tomu, že to je pořád spolehlivější než když tam necháš člověka.

    Mezi lokálním buildem a CI je jeden jediný rozdíl: Musíš definovat jak vypadá prostředí pro build.

    CI pořád vyžaduje, aby fungoval lokální build. Pořád tam máš ten samý Makefile. Když CI vypadne, spustíš to ručně lokálně, nebo se přesuneš k jinému poskytovateli, převedeš těch pár řádek konfigurace do jiného formátu a v klidu pokračuješ. Ta konfigurace typicky říká "spusť make a pak to uploadni tam a tam".

    Hook v lokálním repozitáři sice vypadá na první pohled jednodušeji, ale ve skutečnosti je s tím daleko více problémů. V první řadě se ti hook nepřenese, když si někdo další naklonuje repozitář. Pak také tvůj pracovní adresář není vždy v plně konzistentním stavu a může tam být nějaký bordel, který nechceš zrovna teď smazat ani commitovat, ale přitom ho nechceš v buildu. CI ti stále dává konzistentní výsledky.

    Takový hook také nemusí fungovat na jiném systému, než je ten tvůj, kde jsi ho vytvořil. Rozhodně ho nespustíš třeba na telefonu nebo tabletu, když někde daleko od tvého počítače zjistíš, že je potřeba na webu upravit jednu drobnou, ale ošklivou chybu. (Ano, už jsem to dělal.)

    CI je celkově složitější. Je tam v pozadí infrastruktura, která není úplně triviální, ale je to vyřešená a odladěná věc. Efektivně to vypadá tak, že na webu zaškrtneš "chci CI" a ono to funguje. Dnes už to je ve stavu, kdy je s tím méně práce, než s tím hookem a je to spolehlivější.
    Hello world ! Segmentation fault (core dumped)
    17.9.2020 13:18 zdenek2008 | skóre: 26
    Rozbalit Rozbalit vše Re: GitHub organizace projektu
    Pokud potrebujes venovat vice casu tomu prekladu nez studiu gitu a mas ho uz nainstalovany, v konzoli zadej git add nazev_souboru a na konkretni ukladani novych verzi si pust git gui. Tam ti bude pro zacatek stacit kliknout na "commit" na konci dne a mas ulozeno. Pozor: git soubory jsou skryte a muzes smazat adresar i s nimi (treba budes ve spechu apod.). Asi bude jistejsi to cele obcas nekam zkopirovat. Online repozitar snad staci nechat na pozdeji, mezitim si rozmyslis jestli ho vubec na svuj projekt potrebujes. Do alternativnich systemu bych se ani nehrnul, at pripadne netravis vzacny cas ve slepych ulickach. Hodne stesti.
    Řešení 1× (Filip Jirsák)
    Josef Kufner avatar 17.9.2020 13:21 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: GitHub organizace projektu
    Naopak. Vzdálený repozitář je výborná záloha. Je tedy vhodné si ho nastavit hned na začátku a ten git push občas udělat.
    Hello world ! Segmentation fault (core dumped)

    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.