Co potřebujete vědět o licencích GitHub: jak vybrat a přidat

Программирование

Licence GitHub – o čem to mluvíme? Aby člověk mohl vytvořit software, musí jej nejen napsat, ale také rozhodnout, co s ním mají uživatelé nebo vývojáři právo dělat. Pokud někdo vytvoří bezplatný program pro všechny, dělá dobrý skutek, ale kdo jej používá, bude muset zdůvodnit, jak jej používá. Například pokud firma ve své činnosti bude spolupracovat s nějakou volnou kanceláří (například LibreOffice), tak musí být schopna inspektorům prokázat, že na to má právo. K tomu bude stačit předložit příslušnou licenci. Pokud to developer zapomene formulovat, pak může být společnost v obtížné pozici.

Co potřebujete vědět o licencích GitHub: jak vybrat a přidat
Klasifikace licencí a typy licencí
Při vytváření aplikace se vývojář musí rozhodnout, které akce s jeho programem budou povoleny a které ne. Můžeme se například bavit nejen o používání, ale také o studiu textů programů nebo vlastních úpravách softwarového produktu. GitHub je jednou z největších služeb pro vývoj společných projektů. Zároveň zde mohou pracovat nejen na bezplatných, ale i komerčních projektech. Zadáním příslušné licence vývojáři odstraní nejasnosti ve způsobu použití vytvořeného produktu. Problém je v tom, že existuje mnoho různých typů licencí a není vždy snadné určit, jakou možnost v konkrétním případě zvolit. Není také neobvyklé, že některé projekty nemají licenci.
Co potřebujete vědět o licencích GitHub: jak vybrat a přidat

Proč potřebujete licencovat projekty Open Source na GitHubu

Při specifikaci požadované licence může vývojář poskytnout následující:

  1. Podmínky používání programu . Mohou zahrnovat poplatek nebo v některých nebo všech případech umožňují bezplatné používání.
  2. Někdy jsou programy vytvořeny, aby byly vyvinuty komunitou . V tomto případě je důležité, aby se s texty programu seznámil každý, kdo se chce.
  3. Když jsou k dispozici texty programu, někteří mohou provést změny , aby byl program funkční a co nejspolehlivější. Někdy to může autor umožnit každému, jindy se nabídne, že mu změnu pošle, a sám provede úpravy projektu.
  4. Musíte se rozhodnout, zda třetí strany mohou provádět změny v projektu a nabízet jejich jménem. Když to uděláte, musíte určit, jakou licenci má mít jejich produkt.

Řešením těchto a podobných otázek vlastně autor aplikace do značné míry určuje budoucí osud jím vytvořeného softwarového produktu.

Jaké typy licencí existují

Licence je smlouva, ve které jedna strana (poskytovatel licence) stanoví pravidlo pro druhou stranu (nabyvatel licence) používat jím vytvořený produkt. V praxi nemluvíme o podepisování dokumentu stranami, ale o automatickém souhlasu s odpovídajícími právy a povinnostmi při jeho použití. Pro specifikaci práv a povinností neexistují prakticky žádná omezení. Jedinou podmínkou je, že musí dodržovat zákon. Vytváření vlastních licencí je složitá práce, protože musí být kompatibilní s ostatními předpisy. Nejlepší možností je vybrat a použít jednu ze standardních variant takových dokumentů. V praxi je také zvykem využívat multilicence. Nejčastěji se v takových případech používají dvě licence současně. Autor programu má sice právo samostatně formulovat pravidla, kterými se musí uživatelé řídit, nicméně v praxi se vyvinulo používání velkého množství typů licencí, ze kterých si ve většině případů vyberete tu pravou. Níže jsou uvedeny nejoblíbenější možnosti používané ve většině případů na Git Hub. Nejčastěji používané licence na Git Hub jsou:
Co potřebujete vědět o licencích GitHub: jak vybrat a přidat Programátor si bude muset umět vybrat takový, který bude vyhovovat jeho plánům. Abyste to udělali správně, musíte pochopit, jaké vlastnosti jsou vlastní určitým druhům.

Pokud autor odmítne formulovat dokument, pak se v tomto případě uplatní autorská práva, která jsou standardně stanovena legislativou jeho země. Absence licence tímto způsobem neznamená, že s programem lze cokoliv dělat. Ve skutečnosti lze takovou situaci považovat za jeden z typů licencí.

Jak vybrat licenci Github

Než začnete hledat vhodnou variantu, je nutné, aby si programátor zformuloval své požadavky, od kterých bude vycházet při dalším licencování. Dále byste se měli seznámit s typickými možnostmi, které odpovídají požadavku. Poté budete muset pečlivě prostudovat právní jazyk a učinit konečné rozhodnutí o tom, jaká by měla být licence. Abyste mohli učinit informovanou volbu, musíte pochopit, jaká práva a povinnosti jsou spojeny s konkrétním typem licence. Pro správnou volbu můžete využít speciální služby zvané komparátory. Zde jsou nějaké příklady:

  1. https://choosealicense.com/. Tato stránka obsahuje hlavní otázky pro výběr správné možnosti a podrobné rady, které vám pomohou porozumět funkcím použití.
  2. Stránka https://opensource.org/licenses je věnována recenzím různých svobodných softwarových řešení.
  3. Stránky https://tldrlegal.com/ lze považovat za encyklopedii různých možností licencí. Jsou tam jak přesné právní formulace, tak podrobné komentáře.

Co potřebujete vědět o licencích GitHub: jak vybrat a přidat
Porovnání licencí na https://choosealicense.com/
Nejproduktivnějším způsobem výběru je však pozorné prostudování příslušných právních dokumentů . Přestože mluvíme o pracně náročných činnostech, studium textů dá vývojáři všechny potřebné odpovědi.

Jak přidat licenci na Github

Navzdory rozsáhlému výběru licenčních možností, které se v praxi ukázaly jako efektivní a spolehlivé, může mít vývojář vlastní představy o tom, jaká by měla být licence pro jím vytvořený program. V tomto případě služba poskytuje možnost přidat vlastní verzi nebo upravit stávající. Chcete-li přidat licenci na Github, budete muset provést následující kroky:

  1. Musíte přejít na hlavní stránku vašeho úložiště. Co potřebujete vědět o licencích GitHub: jak vybrat a přidat
  2. Musíte kliknout na tlačítko pro přidání souboru a poté vybrat “Vytvořit nový soubor”. Co potřebujete vědět o licencích GitHub: jak vybrat a přidat
  3. Dále musíte zadat název souboru. U licence to může být jedna ze dvou možností: LICENSE nebo LICENCE.md. Zde je použití velkých písmen povinné.
  4. Vpravo od vstupního pole názvu souboru kliknutím vyberte šablonu licence. Co potřebujete vědět o licencích GitHub: jak vybrat a přidat
  5. V nabídce na levé straně stránky vyberte řádek „Přidat licenci do vašeho projektu“. V tomto případě se vybere varianta z existujících dokumentů. Co potřebujete vědět o licencích GitHub: jak vybrat a přidat
  6. Poté klikněte na řádek „Zkontrolovat a odeslat“. Poté zadejte podrobnosti smlouvy.
  7. Poté je nutné vyjasnit, k jakým doplňkům či změnám došlo. Dále uveďte, zda byl vybraný dokument opraven nebo zda se jedná o vytvoření jiné verze licence. Co potřebujete vědět o licencích GitHub: jak vybrat a přidat

Po potvrzení změn vývojář dokončí proceduru provádění změn v seznamu licencí ve službě Git Hub.

Vyberte si licenci Github – příklady oblíbených licencí na Git Hub

Níže jsou uvedeny možnosti, které jsou nejoblíbenější. Díky pochopení jejich silných a slabých stránek bude programátor schopen najít správnou možnost nebo pochopit, jak efektivně vyhledávat.

GPL

Tuto licenci lze nazvat jednou z nejoblíbenějších. Je to klasika pro ty, kteří produkují svobodný software. Jedním z hlavních požadavků tohoto dokumentu je, že
umožňuje třetím stranám volně upravovat program , ale zároveň mají právo šířit výsledek pouze pod stejnou licencí. Tato licence může mít různé verze. Nejnovější z nich je třetí. GPL používali vývojáři programů, jako je systém správy webového obsahu Drupal, systém správy databází MariaDB, editor vektorové grafiky InkSkape a některé další. Je zajímavé, že SQL používá nejen GPL, ale také komerční licenci.

LGPL

Tento název se překládá jako „GNU GPL Lesser General Public License“. Pro některé vývojáře není GPL vhodná, protože pro ně vytváří povinnost distribuovat upravené produkty pod stejnou licencí. Vlastnosti aplikace této možnosti lze ilustrovat na tom, jak probíhá proces licencování používání knihoven vytvořených programátorem. V tomto případě jsou zvažovány následující tři možnosti:

  1. Když knihovna poskytuje novou funkcionalitu, kde žádná jiná komerční knihovna nemůže udělat totéž, pak je GPL nejlepší volbou.
  2. Vývojář v bezplatné knihovně již implementoval stávající standard. V této oblasti existují komerční možnosti s podobnými funkcemi. Pro tento případ bude vhodné zvolit LGPL.
  3. Pokud jde o nový standard, který ve skutečnosti konkuruje tomu komerčnímu, je licence Apache správnou cestou.

Tento standard
umožňuje komerční využití knihoven . Pokud jsou provedeny úpravy, musí být pro distribuci použity stejné podmínky. Jednoduché použití kódu však umožňuje změnu podmínek.

Eclipse Public License

Tento dokument
umožňuje distribuci pod jinými licencemi, včetně komerčních . Hlavní podmínkou je, že v upravených dílech budou inovace umístěny v samostatném modulu. Tato licence si získala oblibu při vývoji produktů v Javě. Příkladem je programovací jazyk Clojure, framework pro testování java aplikací.
Co potřebujete vědět o licencích GitHub: jak vybrat a přidat

Mozilla Public License

Někteří považují tento dokument za kompromis mezi GPL a komerčními licencemi. MPL vyžaduje
otevřený přístup k určitým souborům . Softwarový produkt může obsahovat některé soubory pod touto licencí a jiné bez ní. Po úpravě je povoleno vložit potřebnou licenci (může to být například komerční), ale to je možné pouze za podmínky, že přístup k souborům uvolněným pod MPL bude stále otevřený. V tomto případě musí být koncovému uživateli poskytnuty informace o autorech původního softwaru. V souladu s tímto dokumentem byla uvolněna kancelář LibreOffice, prohlížeč Mozilla a další softwarové produkty.

Licence Apache Github

AL se nazývá liberální svobodná licence. Tato funkce je způsobena skutečností, že neexistuje
požadavek na vydání odvozeného produktu za stejných podmínek jako dříve . Tento dokument aktivně používá Apache Software Foundation. Při použití je povoleno:

  1. Softwarový produkt je povoleno dále používat pro komerční účely.
  2. Úpravy aplikace jsou povoleny.
  3. Další distribuce by měly obsahovat jméno původního autora.

Vytvořením nové varianty nevzniká pro držitele licence povinnost poskytnout původní kód produktu. Taková licence si získala značnou oblibu. To lze demonstrovat na seznamu známých softwarových produktů, které jsou vydány pod tímto typem licence: operační systém Android, framework, který vytváří podnikové aplikace v Javě, a webový server Apache. https://youtu.be/wyZq-EazOmU

Licence MIT

Někteří považují tuto možnost licence na svobodný software za nejoblíbenější. Za jeho hlavní výhodu někteří považují dobrou kompatibilitu s různými typy bezplatných či komerčních licencí. Nejdůležitějšími funkcemi jsou
možnost upravovat kód a také oprávnění k distribuci pod jinými licencemi podle výběru toho, kdo změny provedl . Softwarové produkty, které používají tento dokument, jsou: knihovna JavaScript s názvem JQuiery, textový editor Atom, AngularJS, vývojový rámec JavaScriptu.

Co potřebujete vědět o licencích GitHub: jak vybrat a přidat
Porovnání licencí Git Hub

Podvodní skály

Někdy si autor nejprve vybere jednu verzi licence a později ji chce změnit. Pokud by program vytvářel sám, pak by taková změna nebyla složitá. Nicméně v případech, kdy bylo na vývoji mnoho účastníků, pak bez jejich souhlasu to nepůjde. Například tvůrce Linuxu, ačkoli ve skutečnosti udělal základ operačního systému, nebude moci změnit licenci bez souhlasu všech těch programátorů, kteří se podíleli na dalším vývoji. Při distribuci pod MPL nemohou ti, kteří provedli změny v kódu, nabízet soubory pod MPL pod jinou licencí. Použití nového dokumentu bude odkazovat na další moduly programu.

info
Rate author
Add a comment