Pilt selgesti mitmemõõtmeline
Prelog
Selle juhendi eesmärk on anda teile võimalus kasutada subversiooni kliendit üldiselt ja, kui teil seda on, oma * DD-WRT-ruuteris. Käesolev juhend ei ole mingil juhul lõplik juhend Subversionile ja palju teavet leiate Subversioni pühakirjast. Selle juhendi eesmärk on anda teile lühitutvustus kõige põhilisematele küsimustele.
Ülevaade
Võib olla mitmesuguseid põhjuseid, miks soovite, et saaksite kontrollida versioonisüsteemi kasutava tarkvaraprojekti viimast koodi. See võimaldab teil saada kasu hiljemalt veel avaldamata muudatustest, testimisest ja isegi arendustegevusest. Selles juhendis läheme läbi mõne põhilise SVN-i terminoloogia, näeme, kuidas installida SVN-klient Linuxis, Windowsis ja kui teil on üks teie OPKG-ga lubatud DD-WRT-ruuter. Oleme lisanud ka näite sellest projektist, mida saate kontrollida ja kasutada ruuteri jaoks.
Mis on Subversion?
Subversion pole mingil juhul ainus olemasolev versioonikontrollisüsteem ja alternatiivid on Git (mille loonud Linus Torvalds Linuxi tuumade asutaja), Mercurial ja Perforce nimetavad vähe. Sellega seoses on see üks vabadest, see on küps ja seda kasutatakse laialdaselt kogu maailmas.
Subversionist välja "Red Book":
Subversion is a free/open source version control system (VCS). That is, Subversion manages files and directories, and the changes made to them, over time. This allows you to recover older versions of your data or examine the history of how your data changed. In this regard, many people think of a version control system as a sort of “time machine.”
Märkus: see raamat on subversiooni alaste teadmiste lõplik kogumik ja teile soovitatakse viidata sellele kõigile Subversioniga seotud teemadele.
Mis on versioonide tegemine?
Versioonide tegemine on protsess, kus projekti hetkeseis salvestatakse. Sellist menetlust kasutatakse tihti tarkvaraarenduse haldamiseks, nii et töö võib jätkuvalt parandada projekti või lisada funktsioone, samas kui on võimalik jälgida, mis on viimase üldise "salvestamise" punkti muutunud. Selle välja töötamiseks võib selline protseduur olla kasulik ühele inimesele, aga veelgi enam inimestele, kes töötavad ühes ja samas projektis. Selle põhjuseks on asjaolu, et tavaliselt, kui töötab projekti kui rühma, jagatakse vastutus ja erinevad inimesed muudavad projekti erinevaid aspekte. Ilma versioonimismehhanismita oleks väga raske hoida sünkroonis kõiki viimaseid töö muutusi.
Terminoloogia
Hoidla Hoidla on koht, kus salvestatakse kõik erinevatest kohtadest pärinevad andmed. Kahjukümblusmaailmas on kliendi vaatevinklist server, mis hoiab projekti andmebaasi. See andmebaas sisaldab kõiki projektiga seotud faile koos kõigi nende varasemate versioonidega.
Läbivaatamine
Kui hoidla luuakse, antakse sellele redigeerimisnumber null (0). Seda arvu suurendatakse ühe (1) iga kord, kui tegemist on kohustusega. Repositri number on globaalne. See tähendab, et hoidlates ei ole üksikute failide individuaalset muutmisnumbrit, isegi kui selle faili kohta midagi sellist kohustust pole muudetud.
Töökoopia
Töökoopia on konkreetse versiooni kohalik eksemplar (või "väljavõte"). Tavaliselt on see versioon väljavõtte korral "viimane" (nimetatakse ka "pea"), kuid eelnevat saab taotleda. Kasutaja võib teha kohaliku koopiaga kõik, mida ta soovib, teades, et halvimal juhul võivad nad lihtsalt koodi uuesti kontrollida. Veelgi enam, see koopia on privaatne. Seda seetõttu, et enne, kui kopeerite oma koopia või värskendate seda, ei näe te teiste inimeste muudatusi ega näe teid.
Uuendamine ja konfliktide lahendamine
Kohalist töökoopiat saab uuendada. See tähendab, et kui olete teatud versiooni "välja loginud" ja kui te töötasite, on hoidlas olevat versiooni uuendatud, saate oma töökoopia värskendada. Tegelikult ei luba server teil muudatusi teha, enne kui värskendate uusima versiooni hoidlasse vastavuses. Seda tehakse, et sundida teid lahendama konflikte kohalikul tasandil, enne kui mõelge isegi hoidla muudatuste tegemisest.
Ühendamine
Ühinemine tähendab protsessi, mille käigus muudetud kood segakse üheks versiooniks. See võib tähendada ka konfliktide lahendamist.
Kohustub
Kohustumine on protsess, mille käigus teie kohalikule eksemplarile tehtud muudatused ühendatakse tagasi hoidlasse. See on protsessi kõige ohtlikum osa, sest siin on tehtud muudatused, mis võivad mõjutada teisi inimesi, kes kasutavad sama hoidlat. Sellepärast tehakse seda tavaliselt mõne aja pärast, meeskonna konsensuse alusel ja pärast ühilduvate konfliktide lahendamist.
Töövoog
Kõige põhiline töövoog kasutaja vaatenurgast subversiooni kasutamisel on järgmine:
1. Kontrollige olemasolevat koodi (tavaliselt peaga). 2. Tehke muudatusi, lisage faile ja arendage üldiselt koodi. 3. Värskendage uusimat versiooni, veendumaks, et teie kohalik koopia on sünkroonis hoidlaga seotud värskendustega. 4. Lokaalselt ühendada ja vajaduse korral lahendada konfliktid. 5. Korrigege liitunud muudatused hoidlasse. 6. GoTo 2. samm.
Võimaldab murda
Kliendi installimine
Subversiooni kasutamiseks peate installima kliendi oma masinasse.
Linuxis
Peate ainult pakendi paigaldama. Ubuntu / Mint puhul tehtaks see järgmiselt:
sudo aptitude install subversion
DD-WRT-is
Kui olete järginud "Kuidas paigaldada täiendavat tarkvara oma koduvõrguprojektil (DD-WRT)", on sul võimalik installida svn-klient, lihtsalt välja andes:
opkg update; opkg install subversion-client
Windowsis
Kuigi meie sügava geeki kasutajad võivad hakata unustama, et GUI on mõnikord isegi olemas, mitte kõik. Kui soovite SVNi hoidlaga ühenduse loomiseks kasutada Windowsi kliendit, on kõige populaarsem neist "Tortoise". Selle kasutamiseks laadige lihtsalt programm alla ja installige tavalisesse "järgmise, järgmise, viimistluse" moodi.
Loo "hoidla"
Kuigi me ei anna selles juhendis üksikasjalikku teavet subversiooniserveri seadistamise kohta, ei ole Google'i alternatiiv algajatele mõeldud halb algus. Google'i hoidla loomine:
-
Liikuge Google'i koodi hostimise veebisaidile ja looge uus projekt.
-
Järgmisel lehel täitke vajalikud väljad ja valige "versioonikontrollisüsteemi" tüüp, mis on subversion.
Märkus. Võite soovida vaadata, milline on Google'i pakkumiste litsentside erinevus, enne kui valite selle projekti jaoks.
- Klõpsake "Loo projekti".
" Kontrollige" oma töökoopiat
Kui teie projekt on loodud, peaksite leidma juhised selle kohta, kuidas sellele juurde pääseda, vahekaardil "Allikas".
Üks märk hotfortechi projekti kohta: see projekt on mõeldud funktsioonide jaoks, mis on DD-WRT-ile lisatud How-To Geeki (mida ma isiklikult kasutavad) pluss mõned isiklikud tweaks. Kuigi see projekt on mõeldud töötamiseks koos siin avaldatud artiklitega howtogeeki kohta, on see ikkagi minu eraprojekt. See tähendab, et see sobib väga hästi mu Buffalo ruuteriga (AR71xx arhitektuur), minu isiklikud kapriisid ja on altid juhuslikule borkage.
Linuxis / DD-WRT
Looge töökataloog, näiteks DD-WRT, mis võiks olla:
mkdir -p /jffs/svn; cd /jffs/svn
Linuxi täielik käsuosa koosneb ise SVN-i käskist, "kassase" direktiivist, hoidla aadressist ja kataloogist ka kassasse. Loo tühi kataloog ja käivitage allpool olev käsk.
svn checkout https://hotfortech-dd-wrt.googlecode.com/svn/trunk/ hotfortech-dd-wrt-read-only
Pange tähele, et ülaltoodud näites kontrollitakse ainult lugemisõigusega versiooni. Kui soovisite luua oma hoidla, peate kasutama linki httpS.
Windowsis
Kuna kilpkonn on shelli laiendus, peate selle kasutamiseks kasutama Windowsi failide uurija kontekstimenüüd (paremklõps). Tegelikult, kui proovite selle käivitada menüüst Start, saate:
- Loo tühi kataloog.
- Paremklõps sellel avab kontekstimenüü.
-
Valige "SVN Checkout":
-
Kopeeri ja kleepige projekti link (kui teil on see olemas) "URL-i" tekstikasti:
-
Sõltuvalt teie projekti suurusest võib see võtta mõnda aega, kuid kui Checkout on lõpetatud, peaksite nägema midagi sellist:
- Võite hakata arenema.
Töötlemise koopia "Uuenda" ja "Ühenda" Kui teie kolleegide koodiga töötamine või teie enda poolt värskendab koodi mitmest asukohast (nt sülearvuti, arvuti või isegi marsruuteri), peate enne uusimate muudatuste saatmist oma töökoopiat värskendama.
Linuxis / DD-WRT
Selle käsuga POSIX süsteemides on lihtsalt:
svn up
Windowsis
-
Paremklõpsake töökataloogis ja valige "SVN Update":
- Kui teil tekib konflikte, proovige järgige ekraanil kuvatavat juhist ja kasutage oma otsust selle kohta, mida nendega teha.
"Kohustu" oma muudatused See on nii, et peaksite olema konfliktivabad ja valmis hoidlate uuendamiseks oma muudatustega. Siinkohal on üks märk sellest, et tavapäraseks on sidumiseks logi sõnumi lisamine, et oleks võimalik lihtsalt meelde tuletada, miks muudatused tehti. Tegelikult teeb Google'i hoidla selle kohustuslikuks eeltingimuseks.
Linuxis / DD-WRT
See on näide kohustusest, mille ma olen teinud hotfortechi projektile, mis suurendas seda versioonile 19:
svn commit -m “updated to reflect new ant-ads pack link”
Windowsis
-
Paremklõpsake töökataloogis ja valige "SVN Commit":
-
Teile tuleks meelde tuletada aken, mis võimaldab märkida logiteate:
- Klõpsake OK ja küsige paroolilt, andke Google'i loodud parool.
-
Kui kohustus oli edukas, peaksite nägema midagi sellist:
- See on nii, sa peaksid olema võimelised panustama nagu BOSS.
Lõplikud märkused See peaks olema piisav, et saaksite alustada. Soovitatav on lugeda SVNi käsiraamatud, et saada põhjalikumat ja paremat ülevaadet kõikidest SVNi kasutustest, valikutest ja hoiatusest. Samuti meenutame teile (uuesti), et subversion on mitte ainult ainsaks versioonikontrollisüsteemiks, vaid GIT (mille loonud Linuxi tuumade asutaja Linus Torvalds) on viimastel aastatel populaarsust saanud.
Kui valite ruuteri hotfortech projekti käivitamiseks käskluse runningconfig.sh, leiad, et see installib praegu teie jaoks: anti-reklaamipakett, Opkg geek-init-skript, samuti asju nagu täielik GNU "ls", "vähem", "BASH" ja palju muud.
/jffs/svn/hotfortech-dd-wrt/running-conf.sh
Lisafunktsioonid on ootel ja need lisatakse tulevikus.
Süsteemihaldurid kodeerivad oma koodist väljapääsu.