Ito ang command shape_releas na maaaring patakbuhin sa OnWorks na libreng hosting provider gamit ang isa sa aming maramihang libreng online na workstation gaya ng Ubuntu Online, Fedora Online, Windows online emulator o MAC OS online emulator
PROGRAMA:
NAME
shape_releas - shapeTools RMS construction ng mga release at prereleases
SINOPSIS
hugis prerelease
hugis pakawalan
hugis plprerelease
hugis paki-release
hugis extractrelease [RELEASENAME= ] [(PARTIAL)RELEASEBASE= ]
DESCRIPTION
Ang puso ng shapeTools Release Management System ay ang mekanismo nito sa paglikha
mga prerelease at release ng pinamamahalaang software system. Maaaring i-invoke ang mga function na ito
mula sa anumang node ng system source repository at mula sa anumang pribadong workspace. Samakatuwid, ang bawat isa
Ang sistema ng node ay maaaring (pre) mailabas nang nakapag-iisa. Pagbuo ng (pre)release ng isang non-leaf
node (isang node na walang mga subsystem) ay nangangailangan ng lahat ng mga subsystem na (pre)release
muna at isinasama ang mga umiiral na (pre)release sa bagong (pre)release.
Ang mga prerelease ay bahagi ng sistematikong paghahanda ng isang release. Nagbibigay sila ng isang sulyap kung paano
ang isang release ay magmumukhang sa kasalukuyang estado ng pag-unlad. Dapat silang gamitin para sa
panloob na publikasyon at pagsubok sa pagsasama. Kapag napatunayang stable ang isang prerelease
sapat na upang mailabas sa labas ng mundo, dapat itong ideklara bilang bagong release ng system.
Ang mekanismong ito ay nagbibigay-daan sa isang di-makatwirang bilang ng mga ikot ng pagsubok sa pagpapalabas nang hindi napaaga ang paggamit
ang inaasahang release number.
Ang pangkalahatang algorithm ng shape_RMS release function ay ang mga sumusunod.
1) suriin ang mga precondition ng release
Bago ipadala ang proseso ng pagpapalabas, susuriin ang system para sa paglalabas.
Kung ang alinman sa mga kinakailangang paunang kondisyon ay hindi natugunan, ang system ay hindi mailalabas at ang
huminto ang proseso ng paglabas. Una, ang bawat subsystem - kung mayroon man - ay dapat na
(pre)inilabas muna. Ang pagbuo ng paglabas ay nangangailangan ng lahat ng mga subsystem na ilabas,
Ang mga prerelease ay nangangailangan ng mga subsystem para i-prerelease. Ang pangalawang kondisyon, nag-aaplay lamang
sa mga prerelease, ay nangangailangan na walang foreign update lock ang aktibo sa alinman sa
mga bahaging papasok sa (pre)release. Ito ay ipinapayong, na walang mga pagbabago sa alinman sa
Ang mga bahagi ng node ay hindi na-save (nakabinbin), kahit na sino ang may-akda. Gayunpaman, kung ang
Ang user na nag-trigger sa proseso ng paglabas ay may mga nakabinbing pagbabago sa anumang magiging bahagi
na inilabas, ang mga ito ay awtomatikong mase-save at ang pag-update ay nag-lock up. Nakabinbin
Hinahayaan ng mga pagbabago na may mga lock ng update ng ibang mga user na mabigo ang proseso ng paglabas.
2) bumuo ng pangalan ng release
Ang bawat release at prerelease ay may identification string, na binuo mula sa node name at
isang dalawang bahagi na numero ng paglabas. Ang mga pangalan ng prerelease ay naglalaman din ng isang prerelease na serial
number, Patchlevel release at prereleases din ang patchlevel number. Ang paglabas
kinukuha ang numero mula sa awtomatikong pinananatili ng node na release identification file.
Ang nabuong string ng pagkakakilanlan ng release ay naka-tag sa anumang bahagi na bahagi nito
ang (pre)release.
3) mag-invoke ng mga release ng mga subsystem
Ang mga prerelease at release ay hinihimok ang lahat ng mga subsystem ng kasalukuyang node. Prerelease
Kasama sa gusali ang pinakakamakailang prerelease ng bawat subsystem, habang inilalabas ang gusali
kasama ang pinakabagong mga paglabas ng subsystem. Nakukuha ng bawat bahagi ng subsystem,
bukod pa sa pangalan ng paglabas ng subsystem na mayroon na sila, ang bagong gawa
release pangalan na naka-tag bilang nagsasagisag pangalan. Ang mga simbolikong pangalan ay maaaring gamitin bilang mga kahalili para sa
mga numero ng bersyon (tingnan vadm(1)).
4) i-save ang mga bahagi ng release at itakda ang mga katangian
Matapos mamarkahan ang lahat ng bahagi ng mga kasamang subsystem, lahat ng direktang bahagi ng
a ang pinakawalan na node ay nakakakuha ng release na string ng pagkakakilanlan bilang simbolikong pangalan. Kung sakali
pagbuo ng isang prerelease, kung ang alinman sa mga direktang bahagi ay may abalang bersyon na naiiba
mula sa huling na-save na bersyon (nakabinbing mga pagbabago) at isang update lock na itinakda ng user na
na-trigger ang prerelease na gusali, awtomatiko itong nai-save bago (tingnan din ang 1. ).
Ang lahat ng mga bersyon ng bahagi ng node (mula sa mga subsystem o direktang bahagi) ay karagdagan
itakda sa isang naaangkop na estado ng bersyon (tingnan sa ibaba).
5) i-install ang mga bahagi sa lugar ng paglabas
Ang huling hakbang ay ang pag-install ng lahat ng minarkahang bersyon ng bahagi (subsystem
mga bahagi at mga bahagi ng node) sa isa sa dalawang lugar ng paglabas. Mga release at
Ang mga prerelease na ginawa mula sa tuktok na node ng source repository ay kinokopya
sa lugar ng paglabas. Lahat ng iba pang release, na kumakatawan lamang sa isang bahagi ng kabuuan
pag-unlad, ay naka-install sa bahagyang lugar ng paglabas.
Hugis prerelease nagliligtas sa kasalukuyang kalagayan ng pag-unlad. Ayon sa algorithm
inilarawan sa itaas, lahat ng hindi na-save na bahagi ng node system ay naka-save at ang pinakabagong bersyon
ng bawat bahagi ay kasama sa bagong prerelease. Ang isang prerelease ay hinihimok din ang
pinakakamakailang prerelease o release (alinman ang pinakabago) ng bawat subsystem. Lahat
Ang mga bahaging bersyon na papasok sa prerelease ay maaaring higit pang matukoy ng
awtomatikong nabuo ang pangalan ng prerelease, na mayroong form
- . pre (hal shapeTools-1.3pre5).
Awtomatikong pinapanatili ang prerelease serial number. Nagsisimula ito sa 1. Lahat ng prerelease
ang mga bersyon ng bahagi ay nakatakda sa estado iminungkahi. Mga prerelease ng buong system (ang
Ang prerelease na aksyon ay na-invoke mula sa tuktok na node) dahilan upang maitakda ang lahat ng mga bersyon ng bahagi
ay na-access. Kinukuha ang isang kopya ng prerelease mula sa source repository at
itinatag na naka-install sa alinman sa release area ng partial release area, depende sa
kung ang prerelease ay binubuo ng buong sistema ng o isang bahagi lamang.
Hugis pakawalan idineklara ang isang dating itinayong prerelease bilang bagong release. Ang pinakabago
Ang prerelease ng kasalukuyang node ay kinuha bilang batayan. Kung ang node ay naglalaman ng mga subsystem, hugis
Ang release ay nangangailangan ng pinakabagong release ng bawat subsystem upang maisama. Kung mayroon man
subsystem ay may prerelease na mas kamakailan kaysa sa huling release, ang hugis ay nagbibigay ng babala at
humihingi ng kumpirmasyon upang magpatuloy. Dahil sa mga teknikal na kadahilanan, ginagawa nito ito para sa bawat isa
sangkap. Huwag malito kapag kailangan mong kumpirmahin nang maraming beses. Ang bagong release
nakakakuha ng pangalan ng form
- . (hal shapeTools-1.3).
Ang henerasyon at rebisyon na numero ay nagmula sa awtomatikong pinananatili ng system
ilabas ang file ng pagkakakilanlan. Sa bawat paglabas, isang bagong bersyon ng file na ito ang nagagawa.
Pagdedeklara ng bagong henerasyon para sa release file (tingnan I-save ang(1)) pinapataas ang sistema
numero ng henerasyon. Ang lahat ng bahaging bersyon ng release ay nakatakda sa estado nai-publish,
maliban kung ang isang release ng buong system ay binuo (hugis release mula sa system
tuktok na node ng puno). Sa kasong ito, ang estado ng lahat ng mga bersyon ng bahagi ay nakatakda sa frozen. Katulad
prerelease, kinukuha ang isang kopya ng release mula sa source repository at isinulat sa
isa sa lugar ng paglabas o sa bahagyang lugar ng paglabas.
Hugis plprerelease at hugis paki-release (hugis patchlevel(pre)release) ay karaniwang ang
katulad ng prerelease at release. Ang pagkakaiba lamang ay ang anyo ng pagkakakilanlan
string. Ang mga patchlevel prerelease ay pinangalanan
- . pl pre (hal shapeTools-1.3pl5pre2)
at patchlevel release
- . pl (hal shapeTools-1.3pl5).
Ang ideya ng mga patchlevel release ay ang bumuo ng mga release na hindi dapat ipadala
ganap ngunit sa halip bilang isang patch sa isang umiiral na release. Siyempre, ang mga totoong release ay maaari ding
maipadala bilang mga patch, kaya ito ay isang pagpapangalan sa convention.
Hugis extractrelease kumukuha ng kopya ng isang partikular na release o prerelease mula sa proyekto
central source repository at ini-install ito sa release area o sa partial release area
(depende sa kung ito ay isang (pre)release ng buong system o isang bahagi lamang ng
sistema). Kapag tinawag nang walang karagdagang mga setting, ini-install nito ang mga pinakabagong (pre)release.
Ang naka-install na kopya ay kumakatawan sa a pinagmulan pamamahagi ng sistema o bahagi ng sistema. Ito ay
ganap na independyente sa kapaligiran ng pag-unlad.
Maaaring magbigay ng tahasang pagkakakilanlan ng paglabas upang hubugin ang extractrelease sa pamamagitan ng pagtatakda
RELEASENAME= sa command line. Pagtatakda ng isa sa mga macro
Ang RELEASEBASE o PARTIALRELEASEBASE sa command line ay muling tinutukoy ang landas patungo sa base
direktoryo ng release tree. (Pre)release ng buong system ay kinopya sa
RELEASEBASE, lahat ng iba pa sa PARTIALRELEASEBASE. Suriin ang iyong Shapefile para sa default
mga setting ng dalawang macro na ito. Ang mga subdirectory ay awtomatikong gagawin doon bilang
kailangan.
Gumamit ng shape_releas online gamit ang mga serbisyo ng onworks.net
