Pagrindinis » kaip » Versijų stebėjimas naudojant „Subversion“ (SVN) pradedantiesiems

    Versijų stebėjimas naudojant „Subversion“ (SVN) pradedantiesiems

    Ar kada nors norėjote dirbti su projektu, galinčiu sekti savo pokyčius ir juos grįžti? „How-To Geek“ paaiškina, kaip naudoti populiarią versijų stebėjimo sistemą „Subversion“ (a.k.a SVN).

    Vaizdas, matomas aiškiai dviprasmiškai

    Prelog

    Šio vadovo tikslas - suteikti jums galimybę naudoti subversion klientą apskritai ir, jei turite, savo * DD-WRT maršrutizatorių. Šis vadovas nėra galutinis „Subversion“ vadovas ir daug informacijos galima rasti „Subversion“ raudonojoje knygoje. Šis vadovas skirtas tik trumpesniam atsakymui į pagrindinius klausimus.

    Apžvalga

    Gali būti daug priežasčių, kodėl norėtumėte, kad galėtumėte „išsiregistruoti“ naujausią programinės įrangos projekto, naudojančio versijų sistemą, kodą. Tai leidžia jums pasinaudoti naujausiais vis dar neišleistais pakeitimais, padėti testavimui ir netgi tobulinti. Šiame vadove mes peržengsime keletą pagrindinių SVN terminų, parodysime, kaip įdiegti SVN klientą Linux, Windows ir ar turite vieną iš jūsų OPKG įjungtą DD-WRT maršrutizatorių. Mes taip pat įtraukėme projekto pavyzdį, kurį galite užsisakyti ir naudoti minėtam maršrutizatoriui.

    Kas yra Subversion?

    Subversion jokiu būdu nėra vienintelė versijos valdymo sistema, o alternatyvos yra „Git“ (kurią sukūrė „Linus Torvalds“ Linux branduolio įkūrėjas), „Mercurial“ ir „PerForce“. Tai pasakė, kad tai yra vienas iš laisvųjų, brandus ir plačiai naudojamas visame pasaulyje.

    „Subversion“ „Raudonoji knyga“:

    Subversion yra nemokamas / atviras šaltinis versijos valdymo sistema (VCS). Tai reiškia, kad laikui bėgant Subversion tvarko failus ir katalogus bei jų pakeitimus. Tai leidžia atkurti senesnes duomenų versijas arba išnagrinėti, kaip pasikeitė jūsų duomenys. Šiuo atžvilgiu daugelis žmonių galvoja apie versijos valdymo sistemą kaip „laiko mašiną“.

    Pastaba: ši knyga yra Galutinis žinių apie subversion rinkimą ir patartina kreiptis į visas su Subversion susijusias temas.

    Kas yra versija?

    Versija yra procesas, kuriame išsaugoma projekto būklė. Tokia procedūra dažnai naudojama programinės įrangos kūrimui, kad darbas galėtų toliau tobulinti projektą arba pridėti funkcijų, tačiau gali stebėti, kas pasikeitė nuo paskutinio „taupymo“ taško. Norint išsiaiškinti, tokia tvarka gali būti naudinga vienam asmeniui, bet dar labiau žmonių grupei, kuri dirba viename projekte. Taip yra todėl, kad, dirbant su projektu kaip grupe, yra atsakomybės pasiskirstymas ir skirtingi žmonės keičia skirtingus projekto aspektus. Be versijų mechanizmo, būtų labai sunku išlaikyti visus sinchronizuotus su naujausiais darbo pakeitimais iš visų kitų.

    Terminologija

    Saugykla
    Duomenų saugykla yra vieta, kurioje išsaugomi visi visų vietų duomenys. Subversioniniame pasaulyje, kliento požiūriu, tai yra serveris, turintis projekto duomenų bazę. Šioje duomenų bazėje yra visi failai, kurie yra projekto dalis su visomis ankstesnėmis versijomis.

    Peržiūra

    Sukūrus saugyklą, jai suteikiamas nulio keitimo numeris (0). Šis skaičius didinamas vienu (1) kiekvieną kartą, kai atliekamas įsipareigojimas. Atnaujinimo numeris saugykloje yra pasaulinis. Tai reiškia, kad nėra atskirų atskirų failų peržiūros talpykloje numerio, net jei toje byloje niekas nepasikeitė tam tikram įvykiui.

    Darbo kopija

    Darbo kopija yra tam tikros versijos vietinė kopija (arba „checkout“). Paprastai ši išregistruota versija yra „naujausia“ (taip pat vadinama „galva“), tačiau gali būti paprašyta pateikti ankstesnę. Naudotojas gali daryti su vietine kopija, ką jis nori, žinodamas, kad blogiausiu atveju jie galėjo dar kartą patikrinti kodą. Be to, ši kopija yra „privati“. Taip yra todėl, kad kol neatnaujinsite ar nepadarysite savo kopijos, jūs nematysite kitų žmonių pokyčių ir nematysite tavęs.

    Atnaujinimas ir konfliktų sprendimas

    Vietinę darbo kopiją galima atnaujinti. Tai yra, jei „patikrinote“ tam tikrą versiją, o dirbdami, atnaujinta saugyklos versija, galite atnaujinti savo darbo kopiją. Tiesą sakant, serveris neleis jums atlikti pakeitimų prieš atnaujindami į naujausią versiją, kad atitiktų saugyklą. Tai daroma siekiant priversti jus išspręsti konfliktus lokaliai, prieš pradėdami galvoti apie pakeitimų keitimą saugykloje.

    Susijungimas

    Susijungimas reiškia procesą, kuriuo pakeistas kodas yra maišomas į vieną versiją. Tai taip pat gali reikšti konfliktų sprendimą.

    Įsipareigojimai

    Įsipareigojimas - tai procesas, kuriame vietinės kopijos pakeitimai bus sujungti atgal į saugyklą. Tai labiausiai pavojinga proceso dalis, nes būtent čia atlikti pakeitimai gali paveikti kitus žmones, naudojančius tą pačią saugyklą. Štai kodėl tai paprastai daroma po tam tikro svarstymo, su bendru sutarimu ir išsprendus bet kokius sujungimus.

    Darbo eiga

    Pagrindinė darbo eiga iš naudotojo perspektyvos, kai naudojate pokalbį, yra tokia:

    1. Patikrinkite esamą kodą (paprastai „galvą“).
    2. Atlikite pakeitimus, pridėkite failus ir paprastai sukurkite kodą.
    3. Atnaujinkite naujausią versiją, kad įsitikintumėte, jog jūsų vietinė kopija yra sinchronizuojama su saugykloje esančiais naujiniais.
    4. Prireikus lokaliai sujungti ir išspręsti konfliktus.
    5. Įtraukite sujungtus pakeitimus į saugyklą.
    6. 2 veiksmas.

    Leidžiame įtrūkti

    Įdiekite Klientą

    Kad galėtumėte naudoti subversion, turite įdiegti klientą savo kompiuteryje.

    „Linux“

    Jums reikia tik įdiegti paketą. „Ubuntu“ / monetų kalykloje tai būtų daroma:

    sudo aptitude install subversion

    DD-WRT

    Jei laikotės „Kaip įdiegti papildomą programinę įrangą savo namų maršrutizatoriuje“ (DD-WRT), galite įdiegti „svn“ klientą tiesiog išleidžiant:

    opkg atnaujinimas; opkg įdiegti subversion-client

    „Windows“

    Nors mes giliai geek vartotojai gali pradėti pamiršti, kad GUI net egzistuoja kartais, ne visi turi. Jei norite prisijungti prie SVN saugyklos, jei norite naudoti „Windows“ klientą, pats populiariausias yra „vėžlys“. Norėdami ją naudoti, tiesiog atsisiųskite programą ir įdiekite į įprastą „kitą, kitą, apdailą“.

    Sukurkite „saugyklą“

    Nors šiame vadove nesiimsime daug informacijos apie tai, kaip sukonfigūruoti subversion serverį, „Google“ alternatyva nėra blogas pradedantiesiems naudotojams. Jei norite sukurti „Google“ saugyklą:

    • Eikite į „Google“ kodo prieglobos svetainę ir „sukurkite“ naują projektą.
    • Kitame puslapyje užpildykite reikiamus laukus ir pasirinkite „versijos valdymo sistemos“ tipą.

      Pastaba: galbūt norėsite pažvelgti, koks yra skirtumas tarp „Google“ siūlomų licencijų, prieš pasirinkdami projektą.
    • Spustelėkite „Sukurti projektą“.
    „Checkout“ jūsų darbo kopija

    Sukūrę projektą, turite turėti galimybę rasti instrukcijas, kaip jį pasiekti skirtuke „Šaltinis“.

    Gražus dalykas, susijęs su „Google“ kodu, yra tai, kad jūsų projektas leis anonimiškai skaityti tik versiją. Jei nenorite susidoroti su problema kuriant savo projektą, galite anonimiškai išsiregistruoti šio rašytojo saugyklą.

    Viena pastaba apie „hotfortech“ projektą: Šis projektas yra skirtas „DD-WRT“ funkcijoms, kurios buvo pridėtos „How-To Geek“ (tai aš asmeniškai naudoju), ir kai kurių asmeninių „tweaks“. Nors šis projektas yra skirtas dirbti kartu su čia paskelbtais straipsniais apie Howtogeek, tai vis dar yra mano privatus projektas. Tai reiškia, kad jis puikiai tinka mano „Buffalo“ maršrutizatoriui (AR71xx architektūra), mano asmeninėms užgaidoms ir yra linkęs atsitiktiniam borkage.

    Linux / DD-WRT

    Sukurkite katalogą, kad galėtumėte dirbti, pavyzdžiui, DD-WRT, kuris galėtų būti:

    mkdir -p / jffs / svn; cd / jffs / svn

    Visą „Linux“ komandą sudaro pati SVN komanda, „checkout“ direktyva, saugyklos adresas ir katalogas, skirtas taip pat. Sukurkite tuščią katalogą ir vykdykite toliau nurodytą komandą:

    svn checkout http://hotfortech-dd-wrt.googlecode.com/svn/trunk/ hotfortech-dd-wrt-tik skaityti

    Atkreipkite dėmesį, kad aukščiau pateiktame pavyzdyje tik skaitymo versija yra patikrinama. Jei pasirinkote sukurti savo saugyklą, turėsite naudoti „httpS“ nuorodą.

    „Windows“

    Kadangi vėžlys yra korpuso plėtinys, jums reikės naudoti „Windows“ failų tyrinėtojo kontekstinį meniu (dešiniuoju pelės klavišu), kad jį naudoti. Iš tiesų, jei bandysite jį naudoti iš meniu Pradėti, gausite:

    • Sukurkite tuščią katalogą.
    • Dešiniuoju pelės klavišu spustelėkite, kad būtų rodomas kontekstinis meniu.
    • Pasirinkite „SVN Checkout“:
    • Nukopijuokite ir įklijuokite nuorodą į projektą (jei turite) į „URL“ teksto laukelį:
    • Priklausomai nuo jūsų projekto dydžio, tai gali užtrukti, bet kai baigsite „Checkout“, turėtumėte pamatyti kažką panašaus:
    • Galite pradėti kurti.

    „Atnaujinti“ ir „Sujungti“ savo darbo kopiją
    Jei dirbate su kodu su kolegomis arba jūs pats atnaujinate kodą iš kelių vietų (t.y. nešiojamojo kompiuterio, darbalaukio ar net maršrutizatoriaus), prieš atlikdami naujausius pakeitimus turėsite atnaujinti savo darbo kopiją.

    Linux / DD-WRT

    Šiose POSIX sistemose ši komanda yra tiesiog:

    svn up

    „Windows“

    • Dešiniuoju pelės mygtuku spustelėkite darbo katalogą ir pasirinkite „SVN atnaujinimas“:
    • Jei susiduriate su konfliktais, pabandykite vadovautis ekrane pateikiamomis instrukcijomis ir naudokite savo nuomonę, ką daryti su jais.

    „Įsipareigokite“ savo pakeitimus
    Būtent taip, jūs turėtumėte būti nemokūs ir pasiruošę atnaujinti saugyklą su pakeitimais.
    Vienintelis dalykas, kurį reikia pažymėti, yra tai, kad yra įprasta pridėti „žurnalo“ pranešimą įsipareigojimui, kad būtų galima lengvai prisiminti, kodėl buvo atlikti pakeitimai. Iš tikrųjų „Google“ saugykla tai yra privalomas išankstinis reikalavimas.

    Linux / DD-WRT

    Tai yra įsipareigojimo, kurį padariau projektui „hotfortech“, kuris pakėlė jį iki 19 versijos, pavyzdys:

    svn saistības -m „atnaujinta, kad atspindėtų naują ant-ads pack“ nuorodą

    „Windows“

    • Dešiniuoju pelės mygtuku spustelėkite darbo katalogą ir pasirinkite „SVN Commit“:
    • Turėtumėte pasveikinti langu, leidžiančiu jums pastebėti žurnalo pranešimą:
    • Paspauskite „OK“ ir paprašykite slaptažodžio, pateikite „Google“ sukurtą slaptažodį.
    • Jei įsipareigojimas buvo sėkmingas, turėtumėte pamatyti kažką panašaus:
    • Tai yra, jūs turėtumėte sugebėti padaryti kaip BOSS.

    Galutinės pastabos
    Tai turėtų pakakti, kad pradėtumėte. Rekomenduojame perskaityti SVN informacines knygas, kad gautumėte gilesnį ir geresnį suvokimą apie visus SVN naudojimo būdus, parinktis ir įspėjimus. Be to, jums primena (dar kartą), kad subversion yra ne vienintelė versijos kontrolės sistema, o GIT (kurį sukūrė „Linus Torvalds“ Linux branduolio įkūrėjas) vis labiau populiarėja pastaraisiais metais.

    Jei pasirinksite paleisti „running-config.sh“ iš savo maršrutizatoriaus „hotfortech“ projekto, pamatysite, kad ji bus įdiegta jums: „Anti-ads-pack“, „Opkg geek-init“ scenarijus, taip pat tokie dalykai kaip visas GNU „ls“, „mažiau“, „BASH“ ir kt.

    /jffs/svn/hotfortech-dd-wrt/running-conf.sh

    Daugiau funkcijų laukia ir ateityje bus pridėtos.


    Sistemos administratoriai koduos savo kelią iš kodavimo.