Moodle Doks: Paano gumamit ng CVS
CVS para sa mga Debeloper ng Moodle
Ang CVS ay ang Concurrent Versioning System, isang
karaniwang paraan ng pamamahala ng source code para sa malalaking
proyektong software. Itinatabi ng CVS ang lahat ng file kaya walang
nawawala, at ang paggamit ng magkakaibang tao ay minamatyagan. May
paraan din ito kung paaano magsasamasama ng code kapag dalawang tao o
mahigit pa ang nagtatrabaho sa iisang file. Lahat ng code, at lahat ng
bersiyon ay iniiimbak sa isang sentral na server (sa kasong ng Moodle,
sa Sourceforge).
Kung gusto mo lamang na i-download ang Moodle sa pamamagitan ng CVS
para makapagpatakbo ng site, marahil ay hindi mo na kailangang basahin
ang pahinang ito - sundan na lamang ang mas payak na instruksiyon ng CVS
sa pahina para
madownload ang Moodle.
Pagsali sa proyekto bilang
developer
Mga Modyul ng CVS
Basic na Utos sa CVS
3.1. Paggamit ng CVS sa Unix
3.2. Paggamit ng CVS sa Windows
Paggamit ng mga Branches
4.1. Pagdebelop ng Trunk
4.2. Mga branch na stable para sa
bawat release
4.3. Branch ng mga katangian para sa malalaking
pagbabago
1. Pagsali sa proyekto bilang developer
Kung inalok ka ng CVS write access (karapatang magsulat) para
matulungan kaming idebelop at imentina ang Moodle!
Ikinagagalak naming makasama ka!
Para makapagsulat ka ng mga pagbabago sa
CVS archive ng Moodle, kailangan ay may account ka muna sa Sourceforge.
(libre na, madali
pa ang rehistrasyon).
Para sa mga halimbawa na nasa pahinang ito, kunwari ang username mo
ay usernameko at ang
password mo ay passwordko.
Basahing mabuti ang mga instruksiyon ng sourceforge para sa
paglikha ng CVS home directory mo - isang bagay na kailangan mong
gawin sa bawat bagong account para "magamit" ito sa CVS. Kailangan mo lamang gumamit ng ssh para makakonekta nang interaktibo sa cvs.sourceforge.net.
Kapag may Sourceforge account ka na, kontakin mo si Martin
Dougiamas, para mabigyan ka niya ng karapatang magsulat sa ilang
partikular na direktoryo ng Moodle.
Para hindi mo na kailangang magbigay ng passwordko tuwing nagpapatakbo ka ng
CVS command, sundin ang direksiyon sa Sourceforge para
sa paggamit ng authorized keys. Opsiyonal ang hakbang na ito, pero
mapapadali nito ang paggamit mo ng CVS.
Kapag tapos na ito, mabibigyan ka na ng lahat ng permission na
kailangan mo, kailangan mo na lamang iset-up ang makina mo at
idownload ang mga kasalukuyang source upang makapagsimula ka nang
butitingin ang mga ito.
2. Mga Modyul ng CVS
Sa CVS, ang salitang "module" ay tumutukoy sa
magkakahiwalay na koleksiyon ng code. Sa Moodle, ang mga sumusunod na
module ay nasa loob ng ating imbakan:
moodle - ang punong Moodle source
code
contrib - ambag ng user at samu't-saring code
na dinidibelop
mysql - isang pasadyang phpMyAdmin na ipaplug
sa Moodle para sa database admin
windows-cron - isang maliit na pakete na
ginagawang posible ang cron sa sistemang Windows
docs - iba't-ibang ekstrang dokumentasyon na
inambag ng user
Karamihan sa mga tao ay trinatrabaho ang mga kasalukuyang
katangian ng moodle module, pero marami ring nag-aambag
ng bagong ideya sa contrib na module. Kapag medyo
nag-mature na ang code sa pook contrib, puwede na itong
ilipat sa punong moodle na modyul.
3. Basic na Utos sa CVS
3.1 Paggamit ng CVS sa Unix
Ginagamit ng Sourceforge CVS ang ssh bilang transport layer
para sa seguridad, kaya't kailangan mong iset ang isang CVS_RSH
environment variable sa inyong Unix shell. Pinakamaiging ilagay ang mga
utos na ito sa .bashrc o .cshrc para hindi mo na ito kailanganing itype
palagi:
setenv CVS_RSH ssh (for csh, tcsh etc)
export CVS_RSH=ssh (for sh, bash etc)
Tapos, icheck-out mo ang pinakabagong dinidebelop na bersiyon
ng Moodle gamit ito (lahat ay nasa isang linya):
cvs -z3 -d:ext:myusername@cvs.sourceforge.net:/cvsroot/moodle co moodle
Pareho rin ang utos para sa iba pang CVS modyul:
cvs -z3 -d:ext:myusername@cvs.sourceforge.net:/cvsroot/moodle co contrib
Huwag mong tangkaing patakbuhin ang unang CVS command na ito sa
isang nageexist nang moodle directory - magsimula nang bagong
direktoryo.
Tandaan na hihilingan ka na ibigay ang passwordko para sa bawat command kung
hindi mo isinet-up ang authorized
keys.
Ngayon, dapat ay may bago ka nang 'moodle' na direktoryo. Puwede
mong baguhin ang pangalan nito o ilipat sa kung saan mo gusto.
Pumasok ka sa direktoryong ito:
cd moodle
Lahat ng pinakabagong Moodle file ay dapat naroroon. Maaari mo
nang baguhin ang mga file sa kopya mo. Upang maihambing ang mga file at
direktoryo mo sa pangunahing CVS na kopya sa server gamitin ang cvs
diff, eg:
cvs diff -c config-dist.php
cvs diff -c lang
Upang makuha ang mga pinakabagong update mula sa server,
gamitin ang:
cvs update -dP
Upang makopya ang mga bago mong file pabalik sa server, gawin
ang ganito:
cd lang/ca
cvs commit
Hihilingan ka na magdagdag ng ilang komento (depende sa default
mong text editor) ... magdagdag ng makabuluhang komento at isara
ang editor ... ipadadala na ang mga file sa Sourceforge at iistore
na ito. Tapos na!
Upang makatipid ng mas maraming oras, puwede kang maglagay ng
mga default na argument sa file na tinatawag na .cvsrc sa iyong
direktoryong home. Halimbawa, ang sa akin ay may ganito:
diff -c
update -dP
Gamitin mo ang 'cvs help' para sa iba pang detalye ...
3.2 Paggamit ng CVS sa Windows
Una, kailangan mong mag-download ng ganap na bagong kopya ng
Moodle gamit ang developer account mo.
Kunin mo ang TortoiseCVS mula sa tortoisecvs.org at iinstol ito,
pagkatapos ay magreboot.
Humanap o lumikha ng bagong folder kung saan mo man
gustong madownload ang Moodle.
Iright-mouse-click mo ang folder na iyon at piliin ang
"CVS Checkout" mula sa menu. May lalabas na
dialog box.
Kopyahin mo ang tekstong ito sa CVSROOT field (gamit ang sarili mong
username!):
:ext:myusername@cvs.sourceforge.net:/cvsroot/moodle
Sa ilalim ng "Module" field, itype ang
"moodle" para makuha ang pinakabagong
dinidibelop na bersiyon ng Moodle, "contrib"
para makuha ang direktoryo ng mga ambag, o
"mysql" para makuha ang MySQL Admin module.
Pindutin ang butong: "OK" at
madadowload na ang lahat.
Ipapakita ng isang dialog box ang lahat ng file na idinadownload,
at pagkatapos ng ilang saglit ay may kumpletong kopya ka na ng
Moodle. Pagkatapos ng unang checkout na ito, puwede ka nang kumuha
ng mga pinakabagong inupdate na file mula sa CVS server:
Iright-mouse-click ang Moodle folder mo (o anumang file)
at piliin ang "CVS Update".
Relaks ka lang at masdan ang pagscroll ng mga log. Itala
ang mga conflict na mangyayari kung ang lokal na code mo ay may mga
pagbabago na dikasundo ng pumapasok na bersiyon - kakailanganin mong
i-edit ang mga file na ito at ayusin ang mga dipagkakasundo nang
mano-mano.
Matapos mamodify ang mga file (mapapansin mo na mula sa berde
ay naging dilaw ang mga icon nito!), maaari mo nang icommit pabalik sa
CVS server ang mga ito nang paganito:
Iright-mouse-click ang Moodle folder mo (o anumang file)
at piliin ang "CVS Commit...".
Sa dialog box, magtype ng malinaw na deskripsiyon ng mga
pagbabago na ikinomit mo.
Iklik ang "OK". Ipadadala na ang mga pagbabago mo sa
server.
4. Paggamit ng mga Branches (Sanga?)
Ipinapakita sa dayagram na ito kung paano nagsasanga ang modyul
ng moodle sa iba't-ibang bersiyon kapag lumaon.
Para makita mo ang lahat ng kasalukuyang tag at
branch (sanga) na makukuha, gamitin ang utos na sumusunod sa anumang
lumang file (tulad ng index.php sa punong direktoryo ng moodle):
cvs status -v index.php
Ilang gabay sa paglalagay ng tag:
Dapat ay palaging nasa malaking titik ang mga pangalan ng tag
at branch (sanga).
Dapat PALAGING lagyan ng mga tag at branch ang
buong modyul (kabuuan ng Moodle). Huwag lagyan ng tag
ang indibidwal na file o direktoryo.
Hindi namin pinahihintulutan ang pagbabago ng pangalan ng mga
tag dahil maaaring pinagbabatayan ito ng mga tao, kaya tiyakin mong tama
ito sa unang pagkakataon!
4.1 Pagdebelop ng trunk (katawan?)
Ang Trunk ng CVS ay ang pangunahing dinidebelop na bersiyon ng
Moodle. Sa CVS kilala rin ito sa tawag na
HEAD, o default na branch.
Tinatangka ng mga debeloper ng Moodle na panatiliing stable
ito, hangga't maaari, subali't dahil naglalaman ito ng bagong code,
malamang ay may mga bug at maliliit na parteng di-stable .
Panapanahon ay nagpapasiya kaming may sapat nang katangian ang
produkto para gumawa ng isang release (lathala?). Sa panahong ito, ang
trunk ay nilalagyan ng tag na
MOODLE_XX_BETA tag (sakaling naisin namin na bumalik sa
puntong iyon) at gagawa ng bagong branch para sa release, na tinatawag
na
MOODLE_XX_STABLE.
Malalathala rin ng paketeng Beta sa panahong ito - para ito sa
mga sumusubok ng produkto na hindi gumagamit ng CVS nguni't nagnanais na
subukin ang pinakabagong katangian at mag-ulat ng mga bug.
4.2 Mga branche na stable para sa
bawat release
Kapag nabuo na ang stable branch na MOODLE_XX_STABLE ay pansamantalang magsasanga ang
pagdedebelop sa dalawang agos. May ilang taong magpapatuloy ng
pagtrabaho sa mga bagong katangian ng trunk para sa susunod na release,
ngunit ang karamihang debeloper ay dapat bigyang diin ang paggamit ng
kasalukuyang STABLE na
branch at pagsasaayos ng mga bug nitong matutuklasan.
Maaari mong palitan ang lokal mong kopya ng Moodle ng STABLE na
bersiyon sa pamamagitan ng sumusunod na utos sa Unix mula sa root na
direktoryo:
cvs update -dP -r MOODLE_XX_STABLE
Pagkatapos nito, lahat ng utos na inilarawan sa itaas ay
puwedeng gamitin sa stable na bersiyon. Upang makabalik sa trunk na
bersiyon iutos lamang ang:
cvs update -dPA
Sa mga kliyenteng kompyuter na Windows, makakakita ka ng menu
kung saan mo pipiliin ang branch.
Kapag ang bagong STABLE branch ay talagang matatag na, maaari
nang maglabas ng release. Lilikha ng mga pakete para sa pamamahagi at
ang branch ay lalagyan ng tag (ni Martin) na:
MOODLE_XXX
Panapanahon, ang mga solusyon sa bug para sa STABLE branch ay
dapat isanib sa trunk upang magamit ang mga ito sa mga bersiyon ng
Moodle sa hinaharap. Imementina ang isang floating tag na may pangalang
MOODLE_XX_MERGED upang masubaybayan ang huling pagsasanib. Ang proseso
para sa ganitong pagsasanib ay ang sumusunod:
Kunin ang pinakabagong bersiyon ng trunk.
cvs update -dPA
Isanib ang lahat ng nasa branch na huling sinaniban, sa
iyong bersiyon ng trunk
cvs update -kk -j MOODLE_13_MERGED -j MOODLE_13_STABLE
Matyagang mabuti ang mga update log kung may mga
dipagkakasundo, at ayusin ang bawat file na makita ninyong may
dipagkakasundo
Icheck pabalik sa CVS trunk version ang pinagsanib na
kopya mo
cvs commit
Balikan ang bersiyon ng branch
cvs update -dPr MOODLE_13_STABLE
Baguhin ang floating merge tag upang maulit ang prosesong
ito sa susunod na pagkakataon
cvs tag -RF MOODLE_13_MERGED
Bilang panghuli, ang halaga ng $version sa
lahat ng mga Moodle version.php na file sa loob ng stable na branch ay
hindi dapat baguhin hangga't maaari (maliban sa huling numero kung
kinakailangan). Ito'y dahil baka dimapansin ng isang taong naga-update
mula sa isang napaka-stable na bersiyon tungo sa susunod na
napaka-stable na bersiyon, ang mga upgrade sa database na ginawa sa
trunk.
4.3 Mga branch ng katangian para sa
malalaking pagbabago
Minsan, may napakalaking katangian na kailangang itsek-in,
kaya't maaaring magtulong-tulong ang ilang tao dito, subali't
napaka-unstable nito para maisama sa pangunahing dinedebelop na trunk.
Sa mga ganitong pagkakataon, maaaring lumikha ng panandaliang
panahon na branch upang pagtrabahuhan ng katangian, at tapos ay isanib
ito pabalik sa punong trunk sa pinakamadaling panahon. Halimbawa ang
MOODLE_14_WIDGET branch na
makikita sa dayagram sa itaas.
Kung nais mo itong gawin sa inyong bagong WIDGET na katangian,
sundin ang mga sumusunod na hakbang:
Talakayin ito sa iba pang debeloper upang matiyak na
kailangan nga ito!
Gumawa ng bagong tag sa trunk (para sa
kabuuang moodle ) na may pangalang MOODLE_XX_WIDGET_PRE
cvs tag -R MOODLE_XX_WIDGET_PRE
Likhain ang branch mo na may pangalang MOODLE_XX_WIDGET
cvs tag -Rb MOODLE_XX_WIDGET
Magtrabaho sa branch na ito hanggang maging sapat ang
stability ng katangian. Icommit kung kinakailangan.
cvs commit
Kapag handa na, isanib ang buong branch sa trunk, ayusin
ang mga dipagkakasundo, i-commit ito sa trunk at abandonahin na ang
branch.
cvs update -dPA
cvs update -kk -j MOODLE_XX_WIDGET
cvs commit
Good luck, mag-ingat at magpakasaya sana kayo!
Dokumentasyon ng Moodle
Version: $Id$
Wyszukiwarka
Podobne podstrony:
cvscvscvscvscvscvs writecvscvscvscvs anoncvsSecure CVS Pservercvscvs howtocvscvscvswięcej podobnych podstron