Odprtokodna licenca je pravni dokument, ki opisuje pogoje, pod katerimi lahko drugi uporabljajo, spreminjajo in distribuirajo vaše odprtokodne projekte.
Dodajanje odprtokodne licence vašemu projektu GitHub pojasnjuje pogoje, pod katerimi lahko drugi uporabljajo vaše delo. To lahko odpravi morebitno zmedo ali se izogne pravnim težavam, ki lahko nastanejo zaradi kršitve pogodbenih pravic.
Naučite se dodati odprtokodne licence svojim projektom, ki gostujejo na GitHubu.
1. korak: Izbira odprtokodne licence
Izbira pravega odprtokodno licenca je pomembna, ker bo določila, kako lahko drugi komunicirajo z in prispevajte k svojemu odprtokodnemu projektu. Na voljo je veliko različnih odprtokodnih licenc, vsaka s svojimi določili in pogoji.
Licenca MIT
Licenca MIT je priljubljena odprtokodna licenca, ki drugim omogoča prosto uporabo, spreminjanje in distribucijo vašega dela z minimalnimi omejitvami. Ta licenca od uporabnikov ne zahteva, da vas navedejo kot izvirnega ustvarjalca. Namesto tega preprosto zahteva, da uporabniki vključijo kopijo licence v katero koli distribucijo vašega projekta. Projekti kot npr
Babel, .NET, Rails in večina projektov npm uporablja licenco MIT.Licenca Apache
Licenca Apache zahteva, da vas uporabniki navedejo kot izvirnega ustvarjalca in vključijo kopijo licence v morebitne distribucije. Uporabnikom tudi omogoča uporabo vašega dela v komercialne namene in od njih ne zahteva, da delijo spremenjene različice vašega dela pod isto licenco. Projekti kot npr Kubernetes, PDF.js in programski jezik Swift uporabljajo licenco Apache.
Splošna javna licenca GNU (GPL)
GPL se pogosto uporablja za projekte programske opreme in zahteva, da razvijalci, če distribuirajo spremenjeno različico programske opreme, to storijo pod isto licenco. To pomeni, da če nekdo spremeni vašo programsko opremo in distribuira spremenjeno različico, mora dati izvorno kodo za to različico na voljo drugim pod enakimi pogoji.
GPL prav tako zahteva, da vas uporabniki navedejo kot prvotnega ustvarjalca programske opreme in vsem distribucijam priložijo kopijo licence.
Obstaja več različnih ravni GNU General Public License (GPL), vključno z GPLv2, GPLv3 in LGPL (Lesser GNU Public License). Vsaka od teh licenc ima svoj niz določil in pogojev, zato je pomembno, da skrbno pretehtate, katera raven GPL je najbolj primerna za vaš projekt. Projekti kot npr Ansible, Bash in GIMP uporabljajo licenco GPL.
Najprej je pomembno, da določite cilje vašega projekta. Nato preglejte določila in pogoje vsake licence, preden izberete licenco za svoj projekt. Če imate še vedno težave z izbiro licence, selectalicense.com spletno mesto vam lahko pomaga pri sprejemanju informirane odločitve o licenciranju vaše kode.
2. korak: Dodajanje licence vašemu projektu na GitHub
Ko izberete ustrezno licenco, pojdite na glavno stran svojega projekta na GitHub. Nato kliknite na Dodaj datoteko spustni meni in izberite Ustvari novo datoteko možnost, kot je prikazano na spodnji sliki.
Nato vnesite »LICENSE« ali »LICENSE.md« v polje za ime datoteke in kliknite Izberite predlogo licence, kot je prikazano na spodnji sliki.
Nato preglejte razpoložljive licence in izberite tisto, ki je najbolj primerna za vaš projekt, kot je prikazano na spodnji sliki.
Nato kliknite Preglejte in oddajte, kot je prikazano na spodnji sliki.
Na koncu napišite sporočilo o potrditvi za svojo licenco in izberite, ali jo želite potrditi neposredno v glavni veji ali ustvariti novo vejo in odpreti zahtevo za vlečenje. Nato pritisnite Objavi novo datoteko gumb za dodajanje licence vašemu projektu, kot je prikazano na spodnji sliki.
Če ste ustvarili zahtevo za vlečenje, da dodate licenco v svoj projekt, združite zahtevo za vlečenje in videli bi LICENCA datoteko na glavni strani vašega projekta na GitHubu.
Izdaje oznak in dodajanje informacij o licenci vašim datotekam README
Podatke o licenci dodajte drugim delom svojih projektov, kot so informacije o izdaji in datoteke README.
Ti dodatki pomagajo povečati prepoznavnost in zagotavljajo, da so uporabniki popolnoma seznanjeni z določili in pogoji, povezanimi z vašim projektom.