En open source-licens er et juridisk dokument, der beskriver de vilkår, hvorunder andre kan bruge, ændre og distribuere dine open source-projekter.
Tilføjelse af en open source-licens til dit GitHub-projekt præciserer de vilkår, under hvilke andre kan bruge dit arbejde. Dette kan opklare potentiel forvirring eller undgå juridiske problemer, der kan opstå som følge af krænkelse af kontraktrettighederne.
Lær, hvordan du tilføjer open source-licenser til dine projekter, der hostes på GitHub.
Trin 1: Valg af en Open Source-licens
At vælge det rigtige open source licens er vigtig, fordi den vil afgøre, hvordan andre kan interagere med og bidrage til dit open source-projekt. Mange forskellige open source-licenser er tilgængelige, hver med sine egne vilkår og betingelser.
MIT-licensen
MIT-licensen er en populær open source-licens, der giver andre mulighed for at bruge, ændre og distribuere dit arbejde frit med minimale begrænsninger. Denne licens kræver ikke, at brugere krediterer dig som den oprindelige skaber. I stedet kræver det blot, at brugerne inkluderer en kopi af licensen med enhver distribution af dit projekt. Projekter som f.eks
Babel, .NET, Rails og de fleste npm-projekter bruger MIT-licensen.Apache-licensen
Apache-licensen kræver, at brugerne krediterer dig som den oprindelige skaber og inkluderer en kopi af licensen med eventuelle distributioner. Det giver også brugere mulighed for at bruge dit arbejde til kommercielle formål og kræver ikke, at de deler ændrede versioner af dit arbejde under samme licens. Projekter som f.eks Kubernetes, PDF.js og The Swift Programming Language bruger Apache-licensen.
GNU General Public License (GPL)
GPL'en bruges ofte til softwareprojekter og kræver, at hvis udviklere distribuerer en modificeret version af softwaren, gør de det under samme licens. Det betyder, at hvis nogen ændrer din software og distribuerer den ændrede version, skal de gøre kildekoden til den version tilgængelig for andre under samme vilkår.
GPL kræver også, at brugerne krediterer dig som den oprindelige skaber af softwaren og inkluderer en kopi af licensen med eventuelle distributioner.
Der er flere forskellige niveauer af GNU General Public License (GPL), inklusive GPLv2, GPLv3 og LGPL (Lesser GNU Public License). Hver af disse licenser har sit eget sæt vilkår og betingelser, og det er vigtigt nøje at overveje, hvilket niveau af GPL der passer bedst til dit projekt. Projekter som f.eks Ansible, Bash og GIMP bruger GPL-licensen.
Det er vigtigt først at bestemme dit projekts mål. Gennemgå derefter vilkårene og betingelserne for hver licens, før du vælger en licens til dit projekt. Hvis du stadig har svært ved at vælge en licens, selectalicense.com websted kan hjælpe dig med at træffe en informeret beslutning om licensering af din kode.
Trin 2: Tilføjelse af licensen til dit projekt på GitHub
Når du har valgt en passende licens, skal du gå til dit projekts hovedside på GitHub. Klik derefter på Tilføj fil dropdown og vælg Opret ny fil mulighed, som vist på billedet nedenfor.
Udfyld derefter "LICENSE" eller "LICENSE.md" i filnavnsfeltet og klik Vælg en licensskabelon, som vist på billedet nedenfor.
Gennemgå derefter de tilgængelige licenser, og vælg den, der passer bedst til dit projekt, som vist på billedet nedenfor.
Klik derefter Gennemgå og indsend, som vist på billedet nedenfor.
Til sidst skal du skrive en commit-besked til din licens og vælge, om du vil commite den direkte til hovedgrenen eller oprette en ny filial og åbne en pull-anmodning. Tryk derefter på Bekræft ny fil knappen for at tilføje licensen til dit projekt, som vist på billedet nedenfor.
Hvis du har oprettet en pull-anmodning for at tilføje licensen til dit projekt, skal du flette pull-anmodningen, og du skulle se LICENS fil på dit projekts hovedside på GitHub.
Tag-udgivelser og føj licensoplysninger til dine README-filer
Du bør tilføje dine licensoplysninger til andre dele af dine projekter, såsom udgivelsesoplysningerne og dine README-filer.
Disse tilføjelser er med til at øge synlighed og sikre, at brugerne er fuldt ud klar over de vilkår og betingelser, der er forbundet med dit projekt.