En åpen kildekode-lisens er et juridisk dokument som skisserer vilkårene som andre kan bruke, modifisere og distribuere dine åpen kildekode-prosjekter under.
Å legge til en åpen kildekode-lisens til GitHub-prosjektet tydeliggjør vilkårene som andre kan bruke arbeidet ditt under. Dette kan oppklare potensiell forvirring eller unngå juridiske problemer som kan oppstå ved brudd på kontraktsrettighetene.
Lær hvordan du legger til åpen kildekode-lisenser til prosjektene dine som er vert på GitHub.
Trinn 1: Velge en åpen kildekode-lisens
Å velge riktig åpen kilde lisens er viktig fordi det vil avgjøre hvordan andre kan samhandle med og bidra til åpen kildekode-prosjektet ditt. Mange forskjellige åpen kildekode-lisenser er tilgjengelige, hver med sine egne vilkår og betingelser.
MIT-lisensen
MIT-lisensen er en populær åpen kildekode-lisens som lar andre bruke, modifisere og distribuere arbeidet ditt fritt, med minimale begrensninger. Denne lisensen krever ikke at brukere krediterer deg som den opprinnelige skaperen. I stedet krever det ganske enkelt at brukerne inkluderer en kopi av lisensen med enhver distribusjon av prosjektet ditt. Prosjekter som f.eks
Babel, .NET, Rails og de fleste npm-prosjekter bruker MIT-lisensen.Apache-lisensen
Apache-lisensen krever at brukerne krediterer deg som den opprinnelige skaperen og inkluderer en kopi av lisensen med eventuelle distribusjoner. Det lar også brukere bruke arbeidet ditt til kommersielle formål og krever ikke at de deler modifiserte versjoner av arbeidet ditt under samme lisens. Prosjekter som f.eks Kubernetes, PDF.js og The Swift Programming Language bruker Apache-lisensen.
GNU General Public License (GPL)
GPL brukes ofte til programvareprosjekter og krever at hvis utviklere distribuerer en modifisert versjon av programvaren, gjør de det under samme lisens. Dette betyr at hvis noen endrer programvaren din og distribuerer den endrede versjonen, må de gjøre kildekoden for den versjonen tilgjengelig for andre under de samme vilkårene.
GPL krever også at brukerne krediterer deg som den opprinnelige skaperen av programvaren og inkluderer en kopi av lisensen med eventuelle distribusjoner.
Det er flere forskjellige nivåer av GNU General Public License (GPL), inkludert GPLv2, GPLv3 og LGPL (Lesser GNU Public License). Hver av disse lisensene har sitt eget sett med vilkår og betingelser, og det er viktig å nøye vurdere hvilket nivå av GPL som passer best for prosjektet ditt. Prosjekter som f.eks Ansible, Bash og GIMP bruker GPL-lisensen.
Det er viktig først å bestemme prosjektets mål. Gå deretter gjennom vilkårene og betingelsene for hver lisens før du velger en lisens for prosjektet ditt. Hvis du fortsatt har problemer med å velge en lisens, selectalicense.com nettstedet kan hjelpe deg med å ta en informert beslutning om lisensiering av koden din.
Trinn 2: Legge til lisensen til prosjektet ditt på GitHub
Etter å ha valgt en passende lisens, gå til prosjektets hovedside på GitHub. Klikk deretter på Legg til fil rullegardinmenyen og velg Opprett ny fil alternativ, som vist på bildet nedenfor.
Deretter fyller du inn «LISENS» eller «LISENS.md» i filnavnfeltet og klikker Velg en lisensmal, som vist på bildet nedenfor.
Se deretter gjennom de tilgjengelige lisensene og velg den som passer best for prosjektet ditt, som vist på bildet nedenfor.
Klikk deretter Se gjennom og send inn, som vist på bildet nedenfor.
Til slutt, skriv en commit-melding for lisensen din og velg om du vil commitere den direkte til hovedgrenen eller opprette en ny gren og åpne en pull-forespørsel. Trykk deretter på Bekreft ny fil for å legge til lisensen til prosjektet ditt, som vist på bildet nedenfor.
Hvis du opprettet en pull-forespørsel for å legge til lisensen til prosjektet ditt, slå sammen pull-forespørselen, og du skal se TILLATELSE fil på prosjektets hovedside på GitHub.
Tagg utgivelser og legg til lisensinformasjon i README-filene dine
Du bør legge til lisensinformasjonen din til andre deler av prosjektene dine, for eksempel utgivelsesinformasjonen og README-filene dine.
Disse tilleggene bidrar til å øke synligheten og sikre at brukerne er fullstendig klar over vilkårene og betingelsene knyttet til prosjektet ditt.