Šta trebate znati o GitHub licencama: kako odabrati i dodati

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

GitHub licence – o čemu pričamo? Da bi se kreirao softver, ne samo da se mora napisati, već i odlučiti šta korisnici ili programeri imaju pravo da rade s njim. Ako neko napravi besplatan program za sve, čini dobro delo, ali ko ga koristi moraće da se opravda kako ga koristi. Na primjer, ako će kompanija u svojoj djelatnosti raditi sa nekom slobodnom kancelarijom (na primjer, LibreOffice), onda mora biti u mogućnosti da dokaže inspektorima da ima pravo na to. Da biste to učinili, dovoljno je predstaviti odgovarajuću licencu. Ako programer zaboravi da to formuliše, kompanija može biti u teškoj poziciji.

Šta trebate znati o GitHub licencama: kako odabrati i dodati
Klasifikacija licenci i vrste licenci
Prilikom kreiranja aplikacije, programer mora odlučiti koje radnje sa njegovim programom će biti dozvoljene, a koje ne. Na primjer, možemo razgovarati ne samo o korištenju, već io proučavanju tekstova programa ili vlastitom prilagođavanju softverskog proizvoda. GitHub je jedan od najvećih servisa za zajednički razvoj projekata. Istovremeno, ovdje mogu raditi ne samo na besplatnim, već i na komercijalnim projektima. Određivanjem odgovarajuće licence, programeri će eliminisati nejasnoće u načinu korištenja kreiranog proizvoda. Problem je u tome što postoji mnogo različitih vrsta licenci i nije uvijek lako odrediti koju opciju odabrati u određenom slučaju. Takođe nije neuobičajeno da neki projekti nemaju licencu.
Šta trebate znati o GitHub licencama: kako odabrati i dodati

Zašto trebate licencirati projekte otvorenog koda na GitHub-u

Kada navede potrebnu licencu, programer može u njoj obezbijediti sljedeće:

  1. Uslovi korišćenja programa . Oni mogu uključivati ​​naknadu ili, u nekim ili svim slučajevima, omogućiti besplatno korištenje.
  2. Ponekad se programi kreiraju da ih razvija zajednica . U ovom slučaju važno je da se svi koji žele upoznati sa programskim tekstovima.
  3. Kada su tekstovi programa dostupni, neki bi mogli napraviti izmjene kako bi program bio funkcionalan i što je moguće pouzdaniji. Ponekad autor može dozvoliti svakome da to uradi, u drugim slučajevima nudi da mu pošalje izmjenu i sam vrši prilagođavanje projekta.
  4. Morate odlučiti da li treće strane mogu unositi izmjene u projekat i ponuditi u njihovo ime. Kada to radite, morate navesti s kojom licencom njihov proizvod treba biti.

Rješavajući ova i slična pitanja, autor aplikacije zapravo u velikoj mjeri određuje dalju sudbinu softverskog proizvoda koji je kreirao.

Koje vrste licenci postoje

Licenca je ugovor u kojem jedna strana (davac licence) uspostavlja pravilo da druga strana (primalac licence) koristi proizvod koji je on kreirao. U praksi, ne govorimo o potpisivanju dokumenta od strane stranaka, već o automatskom dogovoru sa pripadajućim pravima i obavezama prilikom njegovog korišćenja. Praktično nema ograničenja u određivanju prava i obaveza. Jedini uslov je da moraju poštovati zakon. Izrada vlastitih licenci je složen posao, jer mora biti kompatibilan s drugim propisima. Najbolja opcija je odabrati i koristiti jednu od standardnih varijanti takvih dokumenata. U praksi je također uobičajeno koristiti višelicenciranje. Najčešće se u takvim slučajevima istovremeno koriste dvije licence. Iako autor programa ima pravo samostalno formulirati pravila kojih se korisnici moraju pridržavati, ipak se u praksi razvilo korištenje velikog broja vrsta licenci od kojih u većini slučajeva možete odabrati pravu. Sljedeće su najpopularnije opcije koje se koriste na Git Hubu u većini slučajeva. Licence koje se najčešće koriste na Git Hubu su:
Šta trebate znati o GitHub licencama: kako odabrati i dodati Programer će morati da izabere onaj koji će odgovarati njegovim planovima. Da biste to učinili ispravno, morate razumjeti koje su karakteristike svojstvene određenim vrstama.

Ako autor odbije formulirati dokument, tada će se u ovom slučaju primijeniti autorska prava, koja su standardno predviđena zakonodavstvom njegove zemlje. Nedostatak licence na ovaj način ne znači da se bilo šta može uraditi sa programom. Zapravo, takva situacija se može smatrati jednom od vrsta licence.

Kako odabrati Github licencu

Prije nego počnete tražiti odgovarajuću opciju, potrebno je da programer formulira svoje zahtjeve, od kojih će nastaviti s daljnjim licenciranjem. Zatim se trebate upoznati s tipičnim opcijama koje odgovaraju zahtjevu. Nakon toga, morat ćete pažljivo proučiti pravni jezik i donijeti konačnu odluku o tome kakva bi licenca trebala biti. Da biste napravili informirani izbor, morate razumjeti koja su prava i obaveze povezana s određenom vrstom licence. Da biste napravili pravi izbor, možete koristiti posebne usluge koje se nazivaju komparatori. Evo nekoliko primjera:

  1. https://choosealicense.com/. Ova stranica sadrži sugestivna pitanja za odabir prave opcije i detaljne savjete koji će vam pomoći da razumijete karakteristike korištenja.
  2. Stranica https://opensource.org/licenses posvećena je pregledu različitih besplatnih softverskih rješenja.
  3. Stranica https://tldrlegal.com/ može se smatrati enciklopedijom za različite opcije licence. Postoje i precizne zakonske formulacije i detaljni komentari.

Šta trebate znati o GitHub licencama: kako odabrati i dodati
Poređenje licenci na https://choosealicense.com/
Međutim, najproduktivniji način odabira je da pažljivo pročitate relevantne pravne dokumente . Iako govorimo o radno intenzivnim aktivnostima, ipak će proučavanje tekstova programeru dati sve potrebne odgovore.

Kako dodati licencu na Github

Uprkos velikom izboru licencnih opcija koje su se u praksi pokazale efikasnim i pouzdanim, programer može imati svoje ideje o tome kakva bi licenca za program koji je kreirao trebala biti. U ovom slučaju usluga pruža mogućnost dodavanja vlastite verzije ili prilagođavanja postojeće. Da biste dodali licencu na Github, morat ćete slijediti ove korake:

  1. Morate otići na glavnu stranicu vašeg spremišta. Šta trebate znati o GitHub licencama: kako odabrati i dodati
  2. Potrebno je da kliknete na dugme da dodate fajl, a zatim da izaberete „Kreiraj novi fajl“. Šta trebate znati o GitHub licencama: kako odabrati i dodati
  3. Zatim morate unijeti naziv datoteke. Za licencu, ovo može biti jedna od dvije opcije: LICENSE ili LICENCE.md. Ovdje je upotreba velikih slova obavezna.
  4. Desno od polja za unos naziva datoteke kliknite da odaberete predložak licence. Šta trebate znati o GitHub licencama: kako odabrati i dodati
  5. U meniju na lijevoj strani stranice odaberite redak “Dodajte licencu svom projektu”. U ovom slučaju se bira varijanta iz postojećih dokumenata. Šta trebate znati o GitHub licencama: kako odabrati i dodati
  6. Zatim kliknite na red “Pregledaj i pošalji”. Zatim unesite detalje ugovora.
  7. Nakon toga, potrebno je razjasniti koje su dopune ili izmjene napravljene. Zatim naznačite da li je odabrani dokument ispravljen ili se radi o kreiranju druge verzije licence. Šta trebate znati o GitHub licencama: kako odabrati i dodati

Nakon potvrde izmjena, programer završava proceduru izmjene liste licenci na servisu Git Hub.

Odaberite licencu Github – primjeri popularnih licenci na Git Hubu

Sljedeće su opcije koje su najpopularnije. Razumijevajući njihove prednosti i slabosti, programer će moći pronaći pravu opciju ili razumjeti kako efikasno pretraživati.

GPL

Ova licenca se može nazvati jednom od najpopularnijih. Klasičan je za one koji proizvode besplatni softver. Jedan od glavnih uslova ovog dokumenta je da
omogućava trećim licima da slobodno modifikuju program , ali u isto vreme imaju pravo da distribuiraju rezultat samo pod istom licencom. Ova licenca može imati različite verzije. Najnovija od njih je treća. GPL su koristili programeri programa kao što su Drupal sistem za upravljanje web sadržajem, sistem za upravljanje bazama podataka MariaDB, uređivač vektorske grafike InkSkape i neki drugi. Zanimljivo je napomenuti da SQL koristi ne samo GPL, već i komercijalnu licencu.

LGPL

Ovaj naziv se prevodi kao “GNU GPL manja opšta javna licenca”. Za neke programere GPL nije prikladan, jer im stvara obavezu da distribuiraju modificirane proizvode pod istom licencom. Karakteristike primene ove opcije mogu se ilustrovati načinom na koji se odvija proces licenciranja korišćenja biblioteka koje kreira programer. U ovom slučaju razmatraju se sljedeće tri opcije:

  1. Kada biblioteka pruža novu funkcionalnost u kojoj nijedna druga komercijalna biblioteka ne može učiniti isto, onda je GPL najbolji izbor.
  2. Programer u besplatnoj biblioteci je već implementirao postojeći standard. U ovoj oblasti postoje komercijalne opcije sa sličnim funkcijama. U ovom slučaju, biće zgodno odabrati LGPL.
  3. Kada je u pitanju novi standard koji se zapravo takmiči s komercijalnim, Apache licenca je pravi put.

Ovaj standard
dozvoljava komercijalnu upotrebu biblioteka . Ako se naprave modifikacije, isti uslovi i odredbe moraju se koristiti za distribuciju. Međutim, jednostavna upotreba koda omogućava promjenu uslova.

Eclipse javna licenca

Ovaj dokument
dozvoljava distribuciju pod drugim licencama, uključujući i komercijalne . Osnovni uslov je da se u modifikovanim radovima inovacije stave u poseban modul. Ova licenca je stekla popularnost u razvoju proizvoda u Javi. Primjer je programski jezik Clojure, okvir za testiranje java aplikacija.
Šta trebate znati o GitHub licencama: kako odabrati i dodati

Mozilla javna licenca

Neki vide ovaj dokument kao kompromis između GPL-a i komercijalnih licenci. MPL zahtijeva
otvoren pristup određenim datotekama . Softverski proizvod može sadržavati neke datoteke pod ovom licencom, a druge bez nje. Nakon modifikacije, dozvoljeno je staviti licencu koja je potrebna (npr. može biti komercijalna), ali to je moguće samo pod uslovom da će pristup datotekama izdatim pod MPL i dalje biti otvoren. U tom slučaju, krajnjem korisniku moraju biti dostavljeni podaci o autorima originalnog softvera. U skladu sa ovim dokumentom, objavljeni su LibreOffice ured, Mozilla pretraživač i drugi softverski proizvodi.

Apache License Github

AL se naziva liberalna slobodna licenca. Ova karakteristika je zbog činjenice da ne
postoji zahtjev za puštanje derivativnog proizvoda pod istim uvjetima kao prije . Ovaj dokument aktivno koristi Apache Software Foundation. Kada se koristi, dozvoljeno je sljedeće:

  1. Dozvoljeno je dalje korištenje softverskog proizvoda u komercijalne svrhe.
  2. Dozvoljene su izmjene aplikacije.
  3. Naknadne distribucije treba da sadrže ime originalnog autora.

Kreiranjem nove varijante nema obaveze za korisnike licence da daju originalni kod proizvoda. Takva licenca je stekla značajnu popularnost. Ovo se može demonstrirati navođenjem poznatih softverskih proizvoda koji se izdaju pod ovom vrstom licence: operativni sistem Android, okvir koji kreira poslovne aplikacije u Javi i Apache web server. https://youtu.be/wyZq-EazOmU

MIT License

Neki smatraju da je ova opcija licence za besplatni softver najpopularnija. Njegovu glavnu prednost neki smatraju dobrom kompatibilnošću sa različitim vrstama besplatnih ili komercijalnih licenci. Najvažnije karakteristike su
mogućnost modifikacije koda, kao i dozvola za distribuciju pod drugim licencama po izboru onoga ko je izvršio izmjene . Softverski proizvodi koji koriste ovaj dokument su: JavaScript biblioteka pod nazivom JQuiery, Atom uređivač teksta, AngularJS, JavaScript razvojni okvir.

Šta trebate znati o GitHub licencama: kako odabrati i dodati
Poređenje licenci Git Hub-a

Podvodne stijene

Ponekad autor prvo odabere jednu verziju licence, a kasnije želi da je promijeni. Da je sam kreirao program, onda takva promjena ne bi bila teška. Međutim, u slučajevima kada je bilo mnogo učesnika u razvoju, onda bez njihovog pristanka to neće raditi. Na primjer, tvorac Linuxa, iako je zapravo napravio osnovu operativnog sistema, neće moći promijeniti licencu bez saglasnosti svih onih programera koji su učestvovali u daljem razvoju. Prilikom distribucije pod MPL-om, oni koji su izvršili promjene u kodu ne mogu ponuditi datoteke pod MPL-om pod drugom licencom. Upotreba novog dokumenta će se odnositi na druge programske module.

info
Rate author
Add a comment