Jinsi ya kuchagua leseni ya GitHub na kwa nini ni muhimu kufanya chaguo sahihi? GitHub ni huduma kubwa zaidi kwa maendeleo ya pamoja ya miradi ya IT na upangishaji wao unaofuata. Kwa msaada wa huduma hii ya wavuti, idadi isiyo na kikomo ya watu wanaweza kufanya kazi kwenye mradi mara moja, na pia kutoka mahali popote ulimwenguni. GitHub pia ina mfumo wa usimamizi au udhibiti unaokuruhusu kutazama na kudhibiti kabisa mabadiliko yote yaliyofanywa na wasanidi programu kwa wakati, na pia hukuruhusu kurudi kwenye hali ambayo ilitokea kabla ya mabadiliko.
Lakini ili kuiweka kwa urahisi, GitHub ndio kinachojulikana mtandao wa kijamii kwa watengenezaji programu na watengenezaji, ambapo unaweza kupata, na baadaye kufanya mazoezi kwenye nambari kutoka kwa watengenezaji wengine. Unaweza pia kuhifadhi kwingineko yako kwenye GitHub. Kwa ujumla, GitHub ni huduma ambayo inafaa kwa watengenezaji wa novice na watengeneza programu wenye uzoefu. Walakini, watumiaji wa huduma hii wakati mwingine wanaweza kuwa na maswali juu ya kuchagua leseni, kwani chaguo lao ni tofauti kabisa.
Leseni ya GitHub ni nini
Leseni ni hati maalum ambayo ilianzishwa na fomu ya serikali na inakuwezesha kushiriki katika aina fulani ya shughuli za ujasiriamali, ambayo bila kushindwa inahitaji tahadhari maalum kutoka upande wa serikali. Lakini, mara nyingi, katika mazoezi, mikataba ya leseni iliyofupishwa tu au makubaliano ambayo hutoa utoaji wa leseni za sheria za kibinafsi hutumiwa. Kwa ujumla, leseni hufuata moja tu, lakini lengo muhimu zaidi, hii ni makubaliano juu ya wajibu na haki kati ya mtoa leseni na mwenye leseni. Wajibu na haki hizi zinaweza kuwa chochote kabisa, lakini tu ndani ya mfumo wa sheria. Mfano mashuhuri ni kwamba mtoa leseni anaweza kuhitaji jina la mwenye hakimiliki wakati wa kutumia kazi ya mwenye leseni. Au, kwa mfano, ruhusu kazi ya kunakili, lakini marufuku kabisa marekebisho yake. Au, kuleta mahitaji kama hayo ili kazi itolewe kwa hali sawa na ile ya asili, na kadhalika, kuna mifano mingi ya kuweka mbele hali mbali mbali. [kitambulisho cha maelezo = “attach_12368″ align=”aligncenter” width=”780″]
Mfano wa moja ya leseni za Apache[/caption]
Lakini, pia, hatupaswi kusahau kwamba leseni inalinda haki za sio tu ya leseni, bali pia mwenye leseni. Kwa kuwa ndani yake unaweza kuona wazi na kusoma masharti yote ya kutumia kazi, na kwa hiyo hawana haja ya kuogopa kwamba mtoa leseni atadai ghafla makato yoyote au fidia nyingine yoyote kwa matumizi ya kazi yake.
Ikiwa unakataa kutumia leseni inayohusishwa na kazi, hakimiliki bado zinatumika kwa mujibu wa sheria za kisheria zinazotumika katika nchi fulani. Kuweka tu, kukosekana kwa leseni kwa njia yoyote haimaanishi kuwa waandishi wengine wanaweza kutumia mradi huu kwa njia yoyote wanayotaka. Kila kitu ni kinyume chake, kwa sababu bila leseni yoyote maalum, mpangaji programu kwa hali yoyote huondoa haki ambazo zilitolewa na sheria. Pia ni muhimu kukumbuka daima kwamba leseni inasimamia haki na wajibu wote. Hii ni kulinda mmiliki wa kazi kutokana na matarajio ya mtumiaji na nini udhamini wowote unamaanisha. Baada ya yote, hakuna mtu anayetaka kanuni zao ziishie mahakamani kwa njia yoyote.
Hakimiliki ni nini
Hakimiliki inaonekana kwa mtu tu wakati, kama matokeo ya shughuli za kiakili, anaunda kazi fulani ambayo itakuwa ya kipekee, lakini wakati huo huo ni muhimu, kwa mfano, unaweza kuchukua uandishi wa programu hiyo hiyo. Wakati yote yaliyo hapo juu yamefanywa, mtu huyo anakuwa mwandishi na sasa ana hakimiliki zote za kazi hii. Inapaswa pia kusemwa kuwa hakimiliki ni mali na sio mali. Tofauti yao ni kwamba haki za mali zinaweza kuhamishiwa kwa mtu yeyote, lakini haki zisizo za mali zitabaki tu na mwandishi katika hali yoyote. Baada ya yote, kuwa mwandishi ni haki isiyoweza kuhamishwa na isiyoweza kuondolewa.
Leseni ya Open Source ni ya nini?
Hili pia ni swali maarufu kati ya watengenezaji wa novice na waandaaji wa programu, kwani hawaelewi kwa nini leseni inapaswa kushikamana na miradi yao, kwa sababu bila mradi huo unaweza pia kuwepo kwa utulivu. Walakini, hii sio kweli kabisa, kwa sababu ikiwa, kwa mfano, msanidi programu wa novice aliandika nambari muhimu na muhimu, lakini hakuilinda na leseni, basi watumiaji wengine wana maswali. Na haswa kwa sababu ya hii, wakati wateja wanakuja kwake na wanataka kutumia kipande hiki cha nambari kwa madhumuni yao ya kibiashara, wanaona kuwa nambari hiyo haina leseni yoyote na kuikataa tu. Hii ni kutokana na ukweli kwamba makampuni hayatatumia kanuni bila leseni, kwa sababu hawana haja ya matatizo na sheria na wanasheria.
Na ndiyo sababu hata mradi muhimu zaidi na rahisi hautawahi kutekelezwa. Na msanidi programu ambaye alitaka kuchukua kipande hiki cha msimbo atalazimika kutafuta na kutumia njia mbadala, au kuandika tena msimbo ambao tayari uliandikwa na msanidi wa novice hapo awali. Ndiyo sababu ni bora kuhakikisha mapema kwamba programu hutumia leseni sahihi, na muhimu zaidi, inayofaa. Kuchunguza GitHub katika somo moja la video katika dakika 15: https://youtu.be/JfpCicDUMKc
Ni leseni gani ya GitHub inayofaa katika hali fulani – jinsi ya kuchagua?
Hakuwezi kuwa na jibu halisi kwa swali hili, kwa kuwa uchaguzi wa leseni inategemea tu malengo ya mradi na juu ya mapendekezo ya kibinafsi na tamaa ya msanidi mwenyewe. Kama unaweza kuona, kuna leseni nyingi kwenye GitHub, na muhimu zaidi, zote ni za bure na katika kikoa cha umma, ambayo inamaanisha kuwa kila mpangaji programu anaweza kupata leseni ya
Open Source ambayo italingana na mradi wake. Lakini, muhimu zaidi, hatupaswi kusahau kwamba leseni ya Open Source sio tu msimbo usio na leseni.Kwa utafiti mdogo, unaweza kukusanya leseni zote za Open Source na kuzigawanya katika vikundi vitatu vikubwa:
- Kinga kali.
- Kinga dhaifu.
- Ruhusa.
kinga kali
Leseni zinazolinda sana mara nyingi ni tofauti za GPL. Leseni hizi zinahitaji leseni ya mradi pamoja na ufichuzi wa misimbo ya chanzo, bila kujali jinsi msimbo au mradi wowote utatumika au tayari umetumika.
Kinga dhaifu
Kulinda leseni kwa udhaifu mara nyingi ni tofauti za GPL Ndogo. Ambayo tofauti kuu kutoka kwa leseni zinazoruhusiwa ni kwamba hapa ni muhimu pia kutoa leseni ya programu chini ya leseni ya GPL, na pia kutoa misimbo ya chanzo bila kushindwa. Wakati huo huo, ikiwa kuna maktaba katika mradi wa mtayarishaji programu, ambayo ni, kuunganisha tuli au kuunganisha kwa nguvu chini ya leseni ya LGPL, basi itaendana pia na leseni zozote za mradi wa programu hii.
ruhusu
Kuna idadi kubwa ya leseni zinazoruhusiwa, katika safu zao leseni maarufu zaidi ni MIT, Apache 2.0, na BSD. Kwa tofauti kidogo, leseni hizi zina uwezo wa kuruhusu matumizi ya msimbo katika miradi ya Open Source na kwa madhumuni ya kibiashara na miradi. Lakini, katika kesi hii, ni muhimu kukumbuka kuwa ni muhimu kuonyesha uandishi wa programu ya awali.
Leseni zingine maarufu za GitHub
Mbali na vikundi hivi vitatu vya leseni, pia kuna zingine, kwa mfano, leseni nyingine muhimu zaidi ni GPLv2 na upanuzi wa njia za darasa. Leseni hii pia inaweza kutumika kwa miradi ya Open Source na miradi na madhumuni ya kibiashara. Muonekano wake maarufu zaidi uko Oracle, ambayo hutumia GPLv2 na viendelezi vya njia ya darasa ili kutoa leseni kwa miradi na suluhu zake za Open Source. Leseni hii ni muhimu sana na muhimu, kwani leseni za kawaida za GPL, kwa mfano, hazitaweza kukabiliana na bytecode. Hiyo ni, wana maelezo maalum ya mchakato wa kukusanya na kuunganisha, ambayo haifai kabisa kwa lugha nyingine za programu zilizotafsiriwa, lugha maarufu zaidi ya Java ni kati ya lugha hizo. Ni kwa kesi kama hizo kwamba leseni maalum ya GPLv2 iliyo na upanuzi wa njia ya darasa ilitolewa. Baada ya yote, inasema wazi na wazi kwamba maktaba ambayo ilitolewa chini ya leseni hii inaweza kutumika kwa miradi ya kibiashara na madhumuni na leseni nyingine yoyote.
Nini kingine unahitaji kujua kuhusu
leseni za GitHub .
Kuongeza leseni
Baada ya leseni ya mwisho kuchaguliwa, inabaki tu kuiongeza kwenye mzizi wa mradi yenyewe. Ili kutekeleza kitendo hiki, unahitaji tu kuongeza leseni iliyochaguliwa chini ya mzizi wa mradi wakati wa kuunda mradi wenyewe au wakati mwingine wowote. Lakini hata katika hatua hii, huduma ya wavuti ya GitHub iliweza kutunza watumiaji wake na walifanya njia rahisi ya kuongeza leseni ya mwisho hata mwanzoni mwa mradi wenyewe.
Walakini, kwa bahati mbaya, hii sio yote, kwani msanidi programu au programu anahitaji kuangalia kabisa utegemezi wote ambao ulitumiwa katika wazo au mradi wake. Hiyo ni, ikiwa hata moja ya tegemezi ambayo imetolewa chini ya leseni ya GPL, basi mradi mzima wa msanidi lazima uendane na GPL. Kwa uthibitishaji kama huo, programu au zana zilizoundwa hapo awali hutumiwa kwa hili. Kwa mfano, kuna zana ya https://github.com/pivotal/LicenseFinder:
Tunaweza kusema kwamba leseni ni kazi inayotumia wakati, lakini wakati huo huo ni hatua muhimu kwa maisha ya mradi au wazo lolote la programu. Ili kuchagua leseni sahihi, kwa bahati mbaya, unapaswa kutumia muda mwingi, hata hivyo, ni thamani yake kwa mradi huo kufanikiwa. Ni bora kuweka chaguo la leseni mahali pa kwanza wakati wa kuandika programu yoyote, kwa kuwa kwa kufanya hivyo mwanzoni, unaweza kuelekeza juhudi zako zote katika mwelekeo sahihi na kuandika programu ambayo itafanikiwa na rahisi kwa wengi. watumiaji.