Skelbimas
Būdami žiniatinklio kūrėjais, mes dažniausiai dirbame vietinėse plėtros svetainėse, tada tiesiog įkelkite viską, kai viskas baigta. Puiku, kai kalbate tik apie jus, o pokyčiai yra maži, bet kai kalbate apie ne vieną asmuo, dirbantis su kažkuo ar dideliu projektu su daugybe sudėtingų komponentų, tai paprasčiausiai nėra įmanoma. Tada mes kreipiamės į vadinamąjį versijos valdymą.
Šiandien aš kalbėsiu apie atvirojo kodo versijos valdymo programinę įrangą, vadinamą „Git“. Tai leidžia daugiau nei vienam asmeniui saugiai dirbti prie to paties projekto netrukdant vienas kitam, bet tai yra dar daugiau.
Kodėl verta naudoti versijų valdymo programinę įrangą?
Visų pirma, vardas turėtų tai atiduoti. Versijų valdymo programinė įranga leidžia turėti projekto „versijas“, kurios parodo laikui bėgant atliktus kodo pakeitimus ir leidžia prireikus atsitraukti bei anuliuoti tuos pakeitimus. Vien šis sugebėjimas palyginti dvi versijas ar pakeisti pakeitimus daro gana neįkainojamą dirbant su didesniais projektais.
Tikriausiai net kai kada tai padarėte, išsaugojote projekto kopijas skirtinguose taškuose, kad turėtumėte atsarginę kopiją. Versijų valdymo sistemoje būtų išsaugoti tik pakeitimai - pataisos failas, kurį galima pritaikyti vienai versijai, kad ji taptų tokia pati kaip kita versija. Su vienu kūrėju to pakanka.
O kas, jei projekte dirba daugiau nei vienas kūrėjas? Štai tada kyla idėja apie centralizuotą versijų valdymo serverį. Tai ilgą laiką buvo standartas, kai visos versijos saugomos centriniame serveryje, o atskiri kūrėjai patikrina ir įkelia pakeitimus atgal į šį serverį. Jei kada nors peržiūrėjote „Vikipedijos“ puslapio redagavimo istoriją, turėsite gerą mintį, kaip tai veikia realaus pasaulio scenarijuje:
Šios sistemos pranašumai yra tai, kad pakeitimus gali atlikti keli kūrėjai, o kiekvienas pakeitimas gali būti priskirtas konkrečiam kūrėjui. Trūkumas yra tai, kad viskas saugoma nuotolinėje duomenų bazėje, tai reiškia, kad serveriui sumažinus, pakeitimų atlikti negalima; Jei centrinė duomenų bazė prarandama, kiekvienas klientas turi tik dabartinę versiją, kad ir ką jie dirbo.
Tai veda mus prie Gito ir kitų vadinamųjų paskirstytos versijų kontrolės sistemos. Šiose sistemose klientai ne tik tikrina dabartinę failų versiją ir dirba iš jų - jie atspindi visą versijų istoriją. Kiekvienas kūrėjas visada turi išsamią visko kopiją. Vis dar naudojamas centrinis serveris, tačiau, jei blogiausiu atveju nutiks, viską vis tiek bus galima atkurti iš bet kurio kliento, kuris turi naujausias versijas.
„Git“ konkrečiai dirba fotografuodamas failus. jei tam tikroje versijoje failai lieka nepakitę, tai tiesiog susieja su ankstesniais failais - viskas greitai ir lengvai laikosi.
Taip pat gali būti įdomu sužinoti, kad „Git“ naudojama valdyti ir plėtoti branduolys linux branduolys - bazinis blokas, ant kurio statomi visi „Linux“ distros.
Kas yra „Github“?
Nors galite paleisti savo „Git“ serverį vietoje, Github yra ir nuotolinis serveris, ir kūrėjų bendruomenė, ir grafinė žiniatinklio sąsaja, skirta jūsų „Git“ projektui valdyti. Tai nemokama naudoti ne daugiau kaip 5 viešosioms saugykloms - tai yra, kai kas gali peržiūrėti ar panaudoti jūsų kodą - su mažų sąnaudų privačių projektų planais. Aš labai rekomenduoju užsiregistruoti, kad gautumėte nemokamą sąskaitą, kad galėtumėte pradėti žaisti su savo projektais ar šakoti ką nors kito.
Šakės ir šakos
Tai yra pagrindinės „Git“ patirties sąvokos, todėl trumpai paaiškinkime skirtumą.
Turbūt girdėjote kūrinį „šakutė“ dirbdami su linux distros. Jei esate susipažinęs su medijos centro programa „Plex“, žinosite, kad iš pradžių tai buvo panašaus atvirojo kodo šakutė „Xbox Media Center“ „Aeon Nox 3.5“: Graži ir pritaikoma tema „XBMC“Nustatykite savo žiniasklaidos centrą tiksliai taip, kaip norite. „Aeon Nox 3.5“ yra pati naujausia versija, kuri, ko gero, yra geriausia XBMC tema, ir tai retas derinys: graži ... Skaityti daugiau . Tai paprasčiausiai reiškia, kad tam tikru praeities momentu kai kurie kūrėjai paėmė XBMC kodą ir nusprendė eiti savo keliu; kad tapo Plexu.
Tai, be abejo, yra visiškai leidžiama, kai projektas yra atvirojo kodo - su juo galite pasiimti kodą, daryti viską, ko norite. Naudodamiesi „Git“, jei manote, kad jūsų pokyčiai yra pakankamai geri, kad galėtumėte grįžti į „pagrindinį“ projektą, jūs gali pateikti autoriui prašymą ištraukti, paprašydamas grąžinti jūsų pakeitimus į jų originalus projektas. Tai leidžia bet kurioje vietoje prie projekto dirbti šimtams tūkstančių kūrėjų, kurių nė vienas neprivalo būtinai turi būti patvirtinta prieiga prie kodo - jie tiesiog nukopijuoja kodą, padaro pakeitimus ir prašo būti sugrąžinti į meistras. Žinoma, originalaus projekto savininkas gali nuspręsti sutikti su jūsų pakeitimais.
Šakos yra kažkas, ką projektą įgyvendina įgalioti kūrėjai. Tai leidžia lengvai atskirti konkrečias problemas ar funkcijas ir dirbti su jomis nesunaikinant pagrindinių failų. Kai įsitikinsite, kad jūsų filialas išsprendė problemą, vėl sujungiate jį su pagrindiniu. Bet kuriuo metu gali būti tiek filialų, kiek tau patinka; jie netrukdo vienas kitam. Taip pat galite sujungti pakeitimus tarp šakų, neliesdami šeimininko.
Čia yra puiki darbo eigos pavyzdžio schema Vincentas Driessenas:
Kitą kartą nagrinėsime, kaip nustatyti veikiantį „Git“ pavyzdį ir kaip kodą pakeisti filialuose. Versijos valdymas yra didžiulė tema. Čia pateikiau tik trumpiausią apžvalgą, tačiau kaip kūrėjas, įpratęs tiesiog daryti pakeitimus ir juos anuliuoti, jei jie neveikia, visa koncepcija sujaudino mano mintis - tikiuosi, kad ji tinka ir jūsų.
Ar esate patyręs kūrėjas, turintis patirties „Git“? Ar jūs tik pradedate darbą ir galvojate, kad norėtumėte pabūti? Skambėkite komentaruose!
Jamesas yra dirbtinio intelekto bakalauras ir yra CompTIA A + bei Network + sertifikuotas. Jis yra pagrindinis „MakeUseOf“ kūrėjas ir laisvalaikį praleidžia žaisdamas VR dažasvydį ir stalo žaidimus. Nuo mažens jis statė kompiuterius.