1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616661766186619662066216622662366246625662666276628662966306631663266336634663566366637663866396640664166426643664466456646664766486649665066516652665366546655665666576658665966606661666266636664666566666667666866696670667166726673667466756676667766786679668066816682668366846685668666876688668966906691669266936694669566966697669866996700670167026703670467056706670767086709671067116712671367146715671667176718671967206721672267236724672567266727672867296730673167326733673467356736673767386739674067416742674367446745674667476748674967506751675267536754675567566757675867596760676167626763676467656766676767686769677067716772677367746775677667776778677967806781678267836784678567866787678867896790679167926793679467956796679767986799680068016802680368046805680668076808680968106811681268136814681568166817681868196820682168226823682468256826682768286829683068316832683368346835683668376838683968406841684268436844684568466847684868496850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898689969006901690269036904690569066907690869096910691169126913691469156916691769186919692069216922692369246925692669276928692969306931693269336934693569366937693869396940694169426943694469456946694769486949695069516952695369546955695669576958695969606961696269636964696569666967696869696970697169726973697469756976697769786979698069816982698369846985698669876988698969906991699269936994699569966997699869997000700170027003700470057006700770087009701070117012701370147015701670177018701970207021702270237024702570267027702870297030703170327033703470357036703770387039704070417042704370447045704670477048704970507051705270537054705570567057705870597060706170627063706470657066706770687069707070717072707370747075707670777078707970807081708270837084708570867087708870897090709170927093709470957096709770987099710071017102710371047105710671077108710971107111711271137114711571167117711871197120712171227123712471257126712771287129713071317132713371347135713671377138713971407141714271437144714571467147714871497150715171527153715471557156715771587159716071617162716371647165716671677168716971707171717271737174717571767177717871797180718171827183718471857186718771887189719071917192719371947195719671977198719972007201720272037204720572067207720872097210721172127213721472157216721772187219722072217222722372247225722672277228722972307231723272337234723572367237723872397240724172427243724472457246724772487249725072517252725372547255725672577258725972607261726272637264726572667267726872697270727172727273727472757276727772787279728072817282728372847285728672877288728972907291729272937294729572967297729872997300730173027303730473057306730773087309731073117312731373147315731673177318731973207321732273237324732573267327732873297330733173327333733473357336733773387339734073417342734373447345734673477348734973507351735273537354735573567357735873597360736173627363736473657366736773687369737073717372737373747375737673777378737973807381738273837384738573867387738873897390739173927393739473957396739773987399740074017402740374047405740674077408740974107411741274137414741574167417741874197420742174227423742474257426742774287429743074317432743374347435743674377438743974407441744274437444744574467447744874497450745174527453745474557456745774587459746074617462746374647465746674677468746974707471747274737474747574767477747874797480748174827483748474857486748774887489749074917492749374947495749674977498749975007501750275037504750575067507750875097510751175127513751475157516751775187519752075217522752375247525752675277528752975307531753275337534753575367537753875397540754175427543754475457546754775487549755075517552755375547555755675577558755975607561756275637564756575667567756875697570757175727573757475757576757775787579758075817582758375847585758675877588758975907591759275937594759575967597759875997600760176027603760476057606760776087609761076117612761376147615761676177618761976207621762276237624762576267627762876297630763176327633763476357636763776387639764076417642764376447645764676477648764976507651765276537654765576567657765876597660766176627663766476657666766776687669767076717672767376747675767676777678767976807681768276837684768576867687768876897690769176927693769476957696769776987699770077017702770377047705770677077708770977107711771277137714771577167717771877197720772177227723772477257726772777287729773077317732773377347735773677377738773977407741774277437744774577467747774877497750775177527753775477557756775777587759776077617762776377647765776677677768776977707771777277737774777577767777777877797780778177827783778477857786778777887789779077917792779377947795779677977798779978007801780278037804780578067807780878097810781178127813781478157816781778187819782078217822782378247825782678277828782978307831783278337834783578367837783878397840784178427843784478457846784778487849785078517852785378547855785678577858785978607861786278637864786578667867786878697870787178727873787478757876787778787879788078817882788378847885788678877888788978907891789278937894789578967897789878997900790179027903790479057906790779087909791079117912791379147915791679177918791979207921792279237924792579267927792879297930793179327933793479357936793779387939794079417942794379447945794679477948794979507951795279537954795579567957795879597960796179627963796479657966796779687969797079717972797379747975797679777978797979807981798279837984798579867987798879897990799179927993799479957996799779987999800080018002800380048005800680078008800980108011801280138014801580168017801880198020802180228023802480258026802780288029803080318032803380348035803680378038803980408041804280438044804580468047804880498050805180528053805480558056805780588059806080618062806380648065806680678068806980708071807280738074807580768077807880798080808180828083808480858086808780888089809080918092809380948095809680978098809981008101810281038104810581068107810881098110811181128113811481158116811781188119812081218122812381248125812681278128812981308131813281338134813581368137813881398140814181428143814481458146814781488149815081518152815381548155815681578158815981608161816281638164816581668167816881698170817181728173817481758176817781788179818081818182818381848185818681878188818981908191819281938194819581968197819881998200820182028203820482058206820782088209821082118212821382148215821682178218821982208221822282238224822582268227822882298230823182328233823482358236823782388239824082418242824382448245824682478248824982508251825282538254825582568257825882598260826182628263826482658266826782688269827082718272827382748275827682778278827982808281828282838284828582868287828882898290829182928293829482958296829782988299830083018302830383048305830683078308830983108311831283138314831583168317831883198320832183228323832483258326832783288329833083318332833383348335833683378338833983408341834283438344834583468347834883498350835183528353835483558356835783588359836083618362836383648365836683678368836983708371837283738374837583768377837883798380838183828383838483858386838783888389839083918392839383948395839683978398839984008401840284038404840584068407840884098410841184128413841484158416841784188419842084218422842384248425842684278428842984308431843284338434843584368437843884398440844184428443844484458446844784488449845084518452845384548455845684578458845984608461846284638464846584668467846884698470847184728473847484758476847784788479848084818482848384848485848684878488848984908491849284938494849584968497849884998500850185028503850485058506850785088509851085118512851385148515851685178518851985208521852285238524852585268527852885298530853185328533853485358536853785388539854085418542854385448545854685478548854985508551855285538554855585568557855885598560856185628563856485658566856785688569857085718572857385748575857685778578857985808581858285838584858585868587858885898590859185928593859485958596859785988599860086018602860386048605860686078608860986108611861286138614861586168617861886198620862186228623862486258626862786288629863086318632863386348635863686378638863986408641864286438644864586468647864886498650865186528653865486558656865786588659866086618662866386648665866686678668866986708671867286738674867586768677867886798680868186828683868486858686868786888689869086918692869386948695869686978698869987008701870287038704870587068707870887098710871187128713871487158716871787188719872087218722872387248725872687278728872987308731873287338734873587368737873887398740874187428743874487458746874787488749875087518752875387548755875687578758875987608761876287638764876587668767876887698770877187728773877487758776877787788779878087818782878387848785878687878788878987908791879287938794879587968797879887998800880188028803880488058806880788088809881088118812881388148815881688178818881988208821882288238824882588268827 |
- == CMD_DESCRIPTION_ACL ==
- Sets permissions on an object.
-
- == CMD_USAGE_ACL ==
- Usage:
-
- cm ^acl (--^user=<usr_name> | --^group=<group_name>)
- (-^allowed|-^denied|-^overrideallowed|-^overridedenied=+|-<permission>[,...])[,...]
- <objectspec>
-
- --^user User name.
- --^group Group name.
- -^allowed Enables the specified permission or permissions. Use a
- comma to separate permissions. (Use 'cm ^showpermissions'
- to display all the available permissions.)
- -^denied Denies the specified permission or permission. Use a
- comma to separate permissions. (Use 'cm ^showpermissions'
- to display all the available permissions.)
- -^overrideallowed Overrides the allowed permission or permissions. Use a
- comma to separate permissions. (Use 'cm ^showpermissions'
- to display all the available permissions.)
- -^overridedenied Overrides the denied permission or permissions. Use a
- comma to separate permissions. (Use 'cm ^showpermissions'
- to display all the available permissions.)
- objectspec The object whose permissions will be set.
- The valid objects for this command are:
- repserver, repository, branch, changeset, label, item,
- and attribute.
- (Use 'cm ^help ^objectspec' to learn more about specs.)
-
- Special usage for secured paths:
- cm ^acl [(--^user=<usr_name> | --^group=<group_name>)
- (-^allowed|-^denied|-^overrideallowed|-^overridedenied=+|-<permission>[,...])[,...]]
- [--^delete] [--^branches=[+ | -]<branch>[,...]]
- <spec>
-
- --^delete Removes a secured path.
- See Remarks for more info.
- --^branches Sets the secured path permissions to a group of branches.
- Use a comma to separate branches.
- Optionally, each branch can be preceded by the + or -
- sign to specify whether a branch must be added or deleted
- to the list when editing.
- See Remarks for more info.
- spec The secured path where to set the permissions.
-
- == CMD_HELP_ACL ==
- Configuring permissions requires understanding how Plastic SCM security works.
- Check the Security Guide to learn how permissions work:
- https://www.plasticscm.com/download/help/securityguide
-
- Remarks:
-
- This command sets permissions for a user or group on the specified objects,
- repositories, branches, labels and/or server paths.
-
- Object specs:
- (Use 'cm ^help ^objectspec' to learn how to specify objects.)
- The '^acl' command uses a special type of spec: secured paths.
-
- - Secured paths specs:
- ^path:server_path[#tag]
- Examples: ^path:/src/foo.c
- ^path:/doc/pdf
- ^path:/doc/pdf#documents
-
- Permission action:
- Use -^allowed and -^denied to specify what permissions to set.
- Use -^overrideallowed and -^overridedenied arguments to specify what
- permissions to override.
-
- Each action requires a permission list separated by commas.
-
- Permission names:
- Each permission name is preceded by + or - symbol.
- The + symbol sets the permission and the - symbol clears it.
- To see the permissions of an object, use the 'cm ^showacl' command.
-
- Overridden permissions:
- Overriding a permission using -^overrideallowed and -^overridedenied
- allows you to bypass inheritance.
- It is helpful to bypass permissions set at the repository or server
- level.
- Example:
- cm ^acl --^user=vio -^allowed=+^ci -^overrideallowed=+^ci ^br:qa@test
- (Allows user 'vio' to checkin on the branch 'qa' on repo 'test'
- even if she has the permission denied at the repo level.)
-
- Server path permissions (a.k.a. secured paths):
- - It is possible to specify permissions for a given server path.
- - These permissions are checked during the checkin operation.
- - These permissions can also be checked during the update operation,
- and can be used as a way to prevent certain directories and files to
- be downloaded to the workspace.
- - For every item to checkin, the server tries to match the item path
- with a secured path. If it matches, the checkin operation checks
- whether the item has permissions to be checked in.
-
- The permissions that can be defined for a secured path are the
- following:
- '^ci', '^change', '^add', '^move', '^rm', '^read'
-
- If the permissions check is not successful for any of the involved
- items, the checkin operation will be rolled back.
-
- To set secured path permissions to a group of branches, use the
- --^branches option.
- Example:
- cm ^acl --^user=jo -^denied=+^ci ^path:/src#rule0 --^branches=main,main/rel0
-
- To edit the ACL associated to the secured path, the tag is useful.
- Example:
- cm ^acl --^user=jo -^denied=+^rm ^path:/src#rule0
- (Without the tag, the list of branches would need to be specified
- again.)
-
- The list of branches of the secured path can be edited.
- Example:
- cm ^acl ^path:/src#rule0 --^branches=-main,+main/rel1
- (Removes 'main' from the list and adds 'main/rel1'.)
-
- To remove a secured path, use the --^delete argument.
- Example:
- cm ^acl --^user=jo --^delete ^path:/src#rule0
-
- Inheritance:
- Inheritance is an option that comes from the days of Plastic SCM 3.0.
- It is advanced, but almost deprecated.
- It lets an object inherit its permissions from any other object,
- overriding the default inheritance relationships.
-
- Use the option -^cut to cut the inheritance chain.
- Use the option -^cutncpy to cut and copy the current inherited
- permissions. (This is inspired on the Windows filesystem permissions
- where you can cut inheritance but retain the actual permissions.)
-
- The -^inherit option allows the user to inherit from an object spec.
- Example: '-^inherit=object_spec'
-
- Examples:
-
- cm ^acl --^user=danipen -^denied=+^ci ^rep:core
- (Denies checkin for user 'danipen' on repo 'core'.)
-
- cm ^acl --^group=developers -^allowed=+^view,-^read -^denied=+^chgperm ^br:main
- (The command grants view permission, clears read permission,
- and denies chgperm permission to 'developers' group in 'main' branch.)
-
- Secured path examples:
-
- cm ^acl --^group=devs -^denied=+^ci ^path:/server#rel --^branches=main,main/2.0
- (The command denies the checkin permission to 'devs' group for any path
- that matches '/server' in the branches 'main' and 'main/2.0'. The tag '#rel'
- is created to be able to refer to it later.)
-
- cm ^acl ^path:/server#rel --^branches=-/main,+/main/Rel2.1
- (Updates the secured path '/server' whose tag is 'rel', removing the
- 'main' branch and adding the branch 'main/Rel2.1' to the branch
- group the secured path applies to. Considering the previous example,
- now the branches list will contain 'main/Rel2.1' and 'main/2.0'.)
-
- cm ^acl --^user=vsanchezm -^allowed=-^read -^overrideallowed=+^read ^path:/doc
- (Removes '^read' permission to 'vsanchezm' overriding it in '/doc' path.)
-
- == CMD_DESCRIPTION_ACTIVATEUSER ==
- Activates a licensed user.
-
- == CMD_USAGE_ACTIVATEUSER ==
- Usage:
-
- cm ^activateuser | ^au <user-name>[ ...] [--^server=<rep-server-spec>]
-
- user-name The user name or user names to activate. Use double quotes (" ")
- to specify user names containing spaces. Use a whitespace to
- separate user names.
-
- Options:
- --^server=<rep-server-spec> Activates the user in the specified server.
- If no server is specified, executes the command
- in the default server in the client.conf file.
- (Use 'cm ^help ^objectspec' to learn more about
- repserver specs.)
-
- == CMD_HELP_ACTIVATEUSER ==
- Remarks:
-
- To activate a user, it must have been previously deactivated.
- By default, a user is activated the first time they perform a write
- operation in Plastic SCM. The user is automatically activated only if
- the maximum number of users has not been exceeded.
-
- (See the 'cm ^help ^deactivateuser' command for more information about
- deactivating Plastic SCM users.)
-
- Examples:
-
- cm ^activateuser john
- cm ^activateuser david "mary collins"
- cm ^au peter --^server=localhost:8087
-
- == CMD_DESCRIPTION_ADD ==
- Adds an item to version control.
-
- == CMD_USAGE_ADD ==
- Usage:
-
- cm ^add [-^R | -^r | --^recursive] [--^silent] [--^ignorefailed]
- [--^skipcontentcheck] [--^coparent] [--^filetypes=<file>] [--^noinfo]
- [--^format=<str-format>] [--^errorformat=<str-format>]
- <item-path>[ ...]
-
- item-path The item or items to add. Use double quotes (" ") to specify
- paths containing spaces. Use a whitespace to separate items.
- Use * to add all the contents of the current directory.
-
- Options:
-
- -^R -^r --^recursive Adds items recursively.
- --^silent Does not show any output.
- --^ignorefailed If an item cannot be added, the add operation will
- continue without it. Note: If a directory cannot be
- added, its content is not added.
- --^skipcontentcheck When the extension is not enough to set the file as
- text or binary, it will be set as binary instead of
- checking the content to detect the type. This is done
- to increase performance on huge checkins.
- --^coparent Runs a checkout of the parent of the item being added.
- --^filetypes The filetypes file to use. Check the following link for
- more information:
- http://blog.plasticscm.com/2008/03/custom-file-types.html
- --^noinfo Doesn't print progress information.
- --^format Retrieves the output message in a specific format. Check
- the examples for more information.
- --^errorformat Retrieves the error message (if any) in a specific
- format. Check the examples for more information.
-
- == CMD_HELP_ADD ==
- Remarks:
-
- Requirements to add items:
- - The parent directory of the item to add must have been previously added.
-
- Reading input from stdin:
-
- The '^add' command can read paths from stdin. To do this, pass a single dash
- "-".
- Example: cm ^add -
-
- Paths will be read until an empty line is entered.
- This allows you to use pipe to specify which files to add.
- Example:
- dir /S /B *.c | cm ^add -
- (In Windows, adds all .c files in the workspace.)
-
-
-
- Examples:
-
- cm ^add file1.txt file2.txt
- (Adds 'file1.txt' and 'file2.txt' items.)
-
- cm ^add c:\workspace\file.txt
- (Adds 'file.txt' item in path 'c:\workspace'.)
-
- cm ^add -^R c:\workspace\src
- (Recursively adds 'src'.)
-
- cm ^add -^R *
- (Recursively adds all the contents of the current directory.)
-
- cm ^add -^R * --^filetypes=filetypes.conf
- (Recursively adds all the contents of the current directory, using
- 'filetypes.conf' to assign a type to each file based on its extension,
- instead of checking its content.)
-
- cm ^add --^coparent c:\workspace\dir\file.txt
- (Adds 'file.txt' to source control, and performs a checkout of 'dir'.)
-
- cm ^add -^R * --^format="ADD {0}" --^errorformat="ERR {0}"
- (Recursively adds all the contents of the current directory, printing
- '^ADD <item>' for successfully added files, and '^ERR <item>' for items that
- could not be added.)
-
- == CMD_USAGE_ADDIGNOREPATTERN ==
- Usage:
-
- cm ^addignorepattern <pattern>[ ...]
- [--^workspace=<wkpath> | --^allworkspaces] [--^remove]
-
- == CMD_DESCRIPTION_ADMIN ==
- Executes administrative commands on the server.
-
- == CMD_USAGE_ADMIN ==
- Usage:
-
- cm ^admin <command> [options]
-
- Available commands:
-
- ^readonly
-
- To get more information about each command run:
- cm ^admin <command> --^usage
- cm ^admin <command> --^help
-
- == CMD_HELP_ADMIN ==
- Remarks:
- Only the server administrator can execute administrative commands.
-
- Examples:
-
- cm ^admin ^readonly ^enter
- cm ^admin ^readonly ^status
-
- == CMD_DESCRIPTION_ADMIN_READONLY ==
- Enables/disables the server readonly mode.
-
- == CMD_USAGE_ADMIN_READONLY ==
- Usage:
-
- cm ^admin ^readonly (^enter | ^leave | ^status) [<server>]
-
- Actions:
-
- ^enter The server enters read-only mode. Write operations will be rejected.
- ^leave The server leaves read-only mode.
- ^status Shows the server read-only mode status.
-
- Options:
- server Executes the command in the specified server (server:port). (Use
- 'cm ^help ^objectspec' to learn more about server specs.)
- If no server is specified, the command works with the server of the
- current workspace.
- If the current path is not in a workspace, the command works with
- the default server defined in the client.conf config file.
-
- == CMD_HELP_ADMIN_READONLY ==
- Remarks:
- Only the server administrator can enter the server readonly mode.
-
- Examples:
-
- cm ^admin ^readonly ^enter diana:8086
- cm ^admin ^readonly ^leave
-
- == CMD_DESCRIPTION_ANNOTATE ==
- Shows the changeset where each line of a file was last modified and its author.
-
- == CMD_USAGE_ANNOTATE ==
- Usage:
-
- cm ^annotate | ^blame <spec>[ ...]
- [--^format=<str_format>]
- [--^comparisonmethod=(^ignoreeol | ^ignorewhitespaces
- | ^ignoreeolandwhitespaces | ^recognizeall)]
- [--^dateformat=<str_date_format>]
- [--^encoding=<name>]
- [--^stats]
- [--^repository=<repspec>]
-
- spec The spec of the file to annotate.
- (Use 'cm ^help ^objectspec' to learn more about specs.)
- Use double quotes (" ") to specify paths containing spaces.
-
- Options:
-
- --^format Retrieves the output message in a specific format. See
- Remarks for more info.
- --^comparisonmethod Sets the specified comparison method. See Remarks for more info.
- --^dateformat Sets the output format to print dates.
- --^encoding Specifies the output encoding, i.e.: utf-8.
- See the MSDN documentation at
- http://msdn.microsoft.com/en-us/library/system.text.encoding.aspx
- to get the table of supported encodings and its format,
- (at the end of the page, in the "Name" column).
- --^stats Shows statistics information.
- --^repository Specifies a repository spec used to calculate
- the annotations. By default, this command uses the
- repository where the loaded revision repository in the
- workspace is stored. (Use 'cm ^help ^objectspec' to learn
- more about repspecs.)
-
- == CMD_HELP_ANNOTATE ==
- Remarks:
-
- Binary files can't be annotated.
-
- Comparison methods (--^comparisonmethod option):
- ^ignoreeol Ignores the end of line differences.
- ^ignorewhitespaces Ignores the whitespace differences.
- ^ignoreeolandwhitespaces Ignores the end of line and whitespace differences.
- ^recognizeall Detects the end of line and whitespace differences.
-
- Output format parameters (--^format option):
- This command accepts a format string to show the output.
- The output parameters of this command are the following:
- {^owner} User who changed the line the last time.
- {^rev} Source revision specification of the line.
- {^content} Line content.
- {^date} Date when the line was checked in.
- {^comment} Comment of the source revision of the line.
- {^changeset} Changeset of the source revision of the line.
- {^line} Line number of the file.
- {^id} Item id.
- {^parentid} Parent id of the item.
- {^rep} Repository of the item.
- {^branch} Branch of the source revision of the line.
- {^ismergerev} Whether the revision of the line was created in a merge.
-
- --^dateformat:
- To specify the output format in which dates will be printed.
- See the supported formats specified at:
- https://docs.microsoft.com/en-us/dotnet/standard/base-types/custom-date-and-time-format-strings
-
- --^repository:
- To retrieve data from a remote repository. Useful for distributed
- scenarios.
-
- Examples:
-
- cm ^blame c:\workspace\src --^comparisonmethod=^ignoreeolandwhitespaces --^encoding=utf-8
- cm ^annotate c:\workspace\file.txt --^comparisonmethod=^ignoreeol
-
- cm ^annotate c:\workspace\file.txt --^format="{^owner} {^date, 10} {^content}"
- (Writes the owner field, then a blank, then the date field (aligned to
- right), then a blank, and the content.)
-
- cm ^blame c:\workspace\file.txt --^format="{^owner, -7} {^comment} {^date}" \
- --^dateformat=yyyyMMdd
- (Writes the owner field in 7 spaces (aligned to the left) followed by
- a blank, then the comment, followed by another blank, and ending with the
- formatted date (for example, 20170329).)
-
- cm ^annotate c:\workspace\file.txt --^repository=centralRep@myserver:8084
-
- cm ^blame ^serverpath:/src/client/checkin/Checkin.cs#^cs:73666
- (Annotates the file starting in changeset 73666 using a server path.)
-
- == CMD_DESCRIPTION_APPLY_LOCAL ==
- Checks for local changes (locally moved, locally deleted, and locally changed)
- and applies them, so that Plastic SCM starts tracking those changes.
-
- == CMD_USAGE_APPLY_LOCAL ==
- Usage:
-
- cm ^applylocal | ^al [--^dependencies] [<item_path>[ ...]]
- [--^machinereadable [--^startlineseparator=<sep>]
- [--^endlineseparator=<sep>] [--^fieldseparator=<sep>]]
-
- Options:
-
- --^dependencies Adds local change dependencies into the items to
- apply.
- item_path Items to be applied. Use a whitespace to separate
- paths. Use double quotes (" ") to specify paths
- containing spaces.
- --^machinereadable Outputs the result in an easy-to-parse format.
- --^startlineseparator Used with the '--^machinereadable' flag, specifies how
- the lines should start.
- --^endlineseparator Used with the '--^machinereadable' flag, specifies how
- the lines should end.
- --^fieldseparator Used with the '--^machinereadable' flag, specifies how
- the fields should be separated.
-
- == CMD_HELP_APPLY_LOCAL ==
- Remarks:
-
- - If --^dependencies and <item_path> are not specified, the operation involves
- all the local changes in the workspace.
-
- - It is always applied recursively from the given path.
-
- Examples:
-
- cm ^applylocal foo.c bar.c
-
- cm ^applylocal .
- (Applies all local changes in the current directory.)
-
- cm ^applylocal
- (Applies all local changes in the workspace.)
-
- cm ^applylocal --^machinereadable
- (Applies all local changes in the workspace, and prints the result in a
- simplified, easier-to-parse format.)
-
- cm ^applylocal --^machinereadable --^startlineseparator=">" \
- --^endlineseparator="<" --^fieldseparator=","
- (Applies all local changes in the workspace, and prints the result in a
- simplified, easier-to-parse format, starting and ending the lines and
- separating the fields with the specified strings.)
-
- == CMD_DESCRIPTION_ARCHIVE ==
- Archives data in external storage.
-
- == CMD_USAGE_ARCHIVE ==
- Usage:
-
- cm ^archive | ^arch <revspec>[ ...] [-^c=<str_comment>]
- [--^file=<base_file>]
- (Extracts data from the repository and stores it on external storage.)
-
- cm ^archive | ^arch <revspec>[ ...] --^restore
- (Restores previously archived revisions back into the repository.)
-
- revspec One or more revision specs. (Use 'cm ^help ^objectspec'
- to learn more about revspecs.)
- --^restore Restores previously archived data from generated archive
- files. The external storage location and the
- externaldata.conf file must be available at the moment
- of the revision restoration. See Remarks for more
- information.
-
- Options:
-
- -^c Sets a comment in the archive storage files to create.
- --^file Name prefix and (optional) path for the new archive
- data files.
-
- == CMD_HELP_ARCHIVE ==
- Remarks:
-
- This command extracts data from the repository database and store it on
- external storage, saving database space.
- The command can also restore (--^restore) previously archived revisions back
- into the repository database.
-
- Use 'cm ^help ^objectspec' to learn how to specify a revspec.
-
- The user running this command must be the Plastic SCM server administrator
- (repository server owner) to be allowed to complete the operation.
-
- Every data segment from the specified revisions will be stored in a
- different file, with a name starting with the value defined by the --^file
- argument. This argument can contain either a full path value including a
- prefix for future archive files or just this prefix value.
-
- Once archived, the data from the specified revisions will be accessible in
- two ways:
-
- 1. From the client: The client will detect if the data was archived and it
- will prompt the user to enter the location of the files.
- Users can configure the external data location by creating a file named
- externaldata.conf (at the standard configuration files locations, using
- the same rules that apply for the client.conf file) containing the paths
- where archived data have been located.
-
- 2. From the server: This way users won't have to know whether the data was
- archived or not, since requests will be transparently resolved by the
- server. To do so, the administrator will create a file called
- externaldata.conf in the server directory and will fill it with the
- paths where the archived volumes are.
-
- To unarchive (restore) a revision (or set of revisions), the archived
- files must be accessible from the client. Hence, it is not possible to
- unarchive data being resolved by the server (method 2) because the client
- will not be able to identify it as archived.
- If method 2 is used, to unarchive successfully, the administrator will have
- to edit the externaldata.conf server file first to remove access to the
- archived files which have to be unarchived.
-
- Archive example:
- 1) Archive one revision:
- cm ^archive Assets/RoofTextures/Textures/Wooden_Roof_05.png --^file=/Users/ruben/archive/battle
- 2) See the archived revision in the specified output path:
- ^ls -^al /Users/ruben/archive/battle*
- -rw-r--r-- 1 ruben staff 2220039 Nov 9 10:52 /Users/ruben/archive/battle-100280-167
-
- Unarchive (restore) example:
- 1) Add the output archive folder to the externaldata.conf file:
- ^vi /Users/ruben/.plastic4/externaldata.conf
- /Users/ruben/archive
- 2) Unarchive the revision:
- cm ^archive Assets/RoofTextures/Textures/Wooden_Roof_05.png --^restore
-
- Set the PLASTICEDITOR environment variable to specify an editor for
- entering comments. If the PLASTICEDITOR environment variable is set, and
- the comment is empty, the editor will be automatically launched to allow
- you to specify the comment.
-
- Reading input from stdin:
-
- The '^archive' command can read paths from stdin. To do this, pass a single
- dash "-".
- Example: cm ^archive -
-
- Paths will be read until an empty line is entered.
- This allows you to use pipe to specify which files to archive.
- Example:
- dir /S /B *.c | cm ^archive -
- (In Windows, archives all .c files in the workspace.)
-
- Examples:
-
- cm ^archive bigfile.zip#^br:/^main
- (Archives the last revision of 'bigfile.zip' in branch 'main'.)
-
- cm ^archive bigfile.zip#^br:/^main --^restore
- (Restores the archived revision.)
-
- cm ^archive ^rev:myfile.pdf#^cs:2 -^c="big pdf file" --^file=c:\arch_files\arch
- (Archives the revision with changeset 2 of myfile.pdf in 'c:\archived_files'
- folder. The archived file name will start with 'arch' (for example, arch_11_56).)
-
- cm ^find "^revs ^where ^size > 26214400" --^format="{^item}#{^branch}" \
- --^nototal | cm ^archive -^c="volume00" --^file="volume00" -
- (Archives all the files bigger than 25Mb on files starting with name
- 'volume00'.)
-
-
- == CMD_DESCRIPTION_ATTRIBUTE ==
- Allows the user to manage attributes.
-
- == CMD_USAGE_ATTRIBUTE ==
- Usage:
-
- cm ^attribute | ^att <command> [options]
-
- Commands:
-
- ^create | ^mk
- ^delete | ^rm
- ^set
- ^unset
- ^rename
- ^edit
-
- To get more information about each command run:
- cm ^attribute <command> --^usage
- cm ^attribute <command> --^help
-
- == CMD_HELP_ATTRIBUTE ==
- Examples:
-
- cm ^attribute ^create status
- cm ^attribute ^set ^att:status ^br:/main/SCM105 open
- cm ^attribute ^unset ^att:status ^br:/main/SCM105
- cm ^attribute ^delete ^att:status
- cm ^attribute ^rename ^att:status "buildStatus"
- cm ^attribute ^edit ^att:status "Status of the task in the CI pipeline"
-
- == CMD_DESCRIPTION_CHANGELIST ==
- Groups pending changes in changelists.
-
- == CMD_USAGE_CHANGELIST ==
- Usage:
-
- a) Management of changelists objects:
-
- cm ^changelist | ^clist [--^symlink]
- (Displays all changelists.)
-
- cm ^changelist | ^clist ^create <clist_name>
- [<clist_desc>] [--^persistent | --^notpersistent] [--^symlink]
- (Creates a changelist.)
-
- cm ^changelist | ^clist ^delete <clist_name> [--^symlink]
- (Deletes the selected changelist. If this changelist contains pending
- changes, then these will be moved to the ^default changelist.)
-
- cm ^changelist | ^clist ^edit <clist_name> [<action_name> <action_value>]
- [--^persistent | --^notpersistent] [--^symlink]
- (Edits the selected changelist.)
-
- b) Management of contents of a given changelist:
-
- cm ^changelist | ^clist <clist_name> (^add | ^rm) <path_name>[ ...]
- [--^symlink]
- (Edits the selected changelist by adding ('^add') or removing ('^rm') the
- change(s) that match with the given path_name(s). Use a whitespace to
- separate path_names. Use double quotes (" ") to specify paths containing
- spaces. The status of the paths must be '^Added' or '^Checked-out'.)
-
- Options:
-
- clist_name The name of the changelist. A path to a file containing
- the name can be used instead. More info at --^namefile.
- clist_desc The description of the changelist. A path to a file
- containing the description can be used instead. More
- info at --^descriptionfile.
- action_name Choose between '^rename' or '^description' to edit the
- changelist.
- action_value Applies the new name or new description when editing
- the changelist.
- --^persistent The changelist will remain in the workspace even if its
- contents are checked-in or reverted.
- --^notpersistent (Default) The changelist will not remain in the
- workspace even if its contents are checked-in or
- reverted.
- --^symlink Applies the operation to the symlink and not to the
- target.
- --^namefile A valid path to a file containing the name of the
- changelist. Bear in mind the file must exist and its
- content cannot be neither empty nor multiline.
- --^newnamefile A valid path to a file containing the new name of the
- changelist when renaming. Bear in mind the file must exist
- and its content cannot be neither empty nor multiline.
- --^descriptionfile A valid path to a file containing the description for the
- changelist. Bear in mind the file must exist.
-
- == CMD_HELP_CHANGELIST ==
- Remarks:
-
- The '^changelist' command handles both the workspace pending changelists and
- the changes contained in a changelist.
-
- Examples:
-
- cm ^changelist
- (Shows the current workspace changelists.)
-
- cm ^changelist ^create config_changes "dotConf files" --^persistent
- (Creates a new changelist named 'config_changes' and description 'dotConf
- files' which will remain persistent in the current workspace once the
- pending changelist is either checked-in or reverted.)
-
- cm ^changelist ^create --^namefile="name.txt" --^descriptionfile="desc.txt"
- (Creates a new changelist which name and description are both taken from files.)
-
- cm ^changelist ^edit config_changes ^rename config_files --^notpersistent
- (Edits the changelist named 'config_changes' and renames it to
- 'config_files'. Also, it turns the changelist into "not persistent".)
-
- cm ^changelist ^edit config_changes --^notpersistent
- (Edits the changelist named 'config_changes' by turning it into "not persistent".)
-
- cm ^changelist ^delete config_files
- (Removes the pending changelist 'config_files' from the current workspace.)
-
- cm ^changelist ^delete --namefile="name.txt"
- (Removes the changelist identified by the content of 'name.txt' file from the current
- workspace.)
-
- cm ^changelist config_files ^add foo.conf
- (Adds the file 'foo.conf' to the 'config_files' changelist.)
-
- cm ^changelist config_files ^rm foo.conf readme.txt
- (Removes the files 'foo.conf' and 'readme.txt' from the 'config_files'
- changelist and moves the files to the system default changelist.)
-
- cm ^changelist ^edit --^namefile="name.txt" ^description --^descriptionfile="desc.txt"
- (Edits the changelist identified by the content of 'name.txt' file, changing its
- description to the text content of the 'desc.txt' file.)
-
- cm ^changelist ^edit --^namefile="name.txt" ^rename --^newnamefile="newname.txt"
- (Edits the changelist identified by the content of 'name.txt' file, renaming it to
- the text content of the 'newname.txt' file.)
-
- == CMD_DESCRIPTION_CHANGESET ==
- Executes advanced operations on changesets.
-
- == CMD_USAGE_CHANGESET ==
- Usage:
-
- cm ^changeset <command> [options]
-
- Commands:
-
- ^move | ^mv
- ^delete | ^rm
- ^editcomment | ^edit
-
- To get more information about each command run:
- cm ^changeset <command> --^usage
- cm ^changeset <command> --^help
-
- == CMD_HELP_CHANGESET ==
- Examples:
-
- cm ^changeset ^move ^cs:15@myrepo ^br:/main/scm005@myrepo
- cm ^changeset ^delete ^cs:2b55f8aa-0b29-410f-b99c-60e573a309ca@devData
-
- == CMD_DESCRIPTION_CHANGESET_EDIT_COMMENT ==
- Modifies the comment of a changeset.
-
- == CMD_USAGE_CHANGESET_EDIT_COMMENT ==
- Usage:
-
- cm ^changeset ^editcomment | ^edit <csetspec> <new_comment>
-
- Options:
-
- csetspec The target changeset whose comment will be edited.
- (Use 'cm ^help ^objectspec' to learn more about changeset
- specs.)
- new_comment The new comment that will be added to the targeted
- changeset.
-
- == CMD_HELP_CHANGESET_EDIT_COMMENT ==
- Remarks:
-
- - The targeted changeset spec must be valid.
-
- Examples:
-
- cm ^changeset ^editcomment ^cs:15@myrepo "I forgot to add the checkin details"
- cm ^changeset ^edit ^cs:cb11ecdb-1aa9-4f11-8698-dcab14e5885a \
- "This comment text will replace the previous one."
- cm ^changeset ^edit "89095131-895d-4173-9440-ff9ef9b2538d@project@cloud" \
- "Changing my comment"
-
- == CMD_DESCRIPTION_CHANGESET_MOVE ==
- Moves a changeset and all its descendants to a different branch.
-
- == CMD_USAGE_CHANGESET_MOVE ==
- Usage:
-
- cm ^changeset ^move | ^mv <csetspec> <branchspec>
-
- Options:
-
- csetspec First changeset to be moved to a different branch. All
- descendant changesets in the same branch will be
- targeted by the command as well.
- (Use 'cm ^help ^objectspec' to learn more about changeset
- specs.)
- branchspec The target branch where the targeted changesets are
- stored. It needs to be empty or non-existing; if the
- destination branch doesn't exist, it will be created by
- the command.
- (Use 'cm ^help ^objectspec' to learn more about branch
- specs.)
-
- == CMD_HELP_CHANGESET_MOVE ==
- Remarks:
-
- - The targeted changeset spec must be valid.
- - The destination branch must be either empty or non-existing.
- - If the destination branch doesn't exist, it will created.
- - Merge links will be kept unchanged since branches don't affect them.
-
- Examples:
-
- cm ^changeset ^move ^cs:15@myrepo ^br:/main/scm005@myrepo
- cm ^changeset ^move ^cs:cb11ecdb-1aa9-4f11-8698-dcab14e5885a ^br:/hotfix/TL-352
-
- == CMD_DESCRIPTION_CHANGESET_DELETE ==
- Deletes a changeset from the repository.
-
- == CMD_USAGE_CHANGESET_DELETE ==
- Usage:
-
- cm ^changeset ^delete | ^rm <csetspec>
-
- Options:
-
- csetspec The target changeset to be removed. It must fulfill
- some specific conditions. See Remarks for more info.
- (Use 'cm ^help ^objectspec' to learn more about changeset
- specs.)
-
- == CMD_HELP_CHANGESET_DELETE ==
- Remarks:
-
- - The target changeset must be the last in its branch.
- - The target changeset cannot be the parent of any other changeset.
- - The target changeset cannot be neither the source of a merge link nor
- part of an interval merge as source.
- - No label must be applied to the target changeset.
- - The target changeset must not be the root changeset ('^cs:0').
-
- Examples:
-
- cm ^changeset ^rm ^cs:4525@myrepo@myserver
- cm ^changeset ^delete ^cs:cb11ecdb-1aa9-4f11-8698-dcab14e5885a
-
- == CMD_DESCRIPTION_CHANGEUSERPASSWORD ==
- Changes the user's password (UP).
-
- == CMD_USAGE_CHANGEUSERPASSWORD ==
- Usage:
-
- cm ^changepassword | ^passwd
-
- == CMD_HELP_CHANGEUSERPASSWORD ==
- Remarks:
-
- This command is only available when the security configuration is UP
- (user/password).
- See the Administrator Guide for more information:
- https://www.plasticscm.com/download/help/adminguide
-
- The old and new passwords are required.
-
- Examples:
-
- cm ^passwd
-
- == CMD_DESCRIPTION_CHECKCONNECTION ==
- Checks the connection to the server.
-
- == CMD_USAGE_CHECKCONNECTION ==
- Usage:
-
- cm ^checkconnection | ^cc
-
- == CMD_HELP_CHECKCONNECTION ==
- Remarks:
-
- - This command returns a message indicating whether there is a valid
- connection to the configured Plastic SCM server.
- - The command checks checks the version compatibility with the server.
- - The command also checks whether the configured user is valid or not.
-
- == CMD_DESCRIPTION_CHECKDB ==
- Checks the repositories integrity.
-
- == CMD_USAGE_CHECKDB ==
- Usage:
-
- cm ^checkdatabase | ^chkdb [<repserverspec> | <repspec>]
-
- Options:
-
- repserverspec Repositories server.
- repspec Repository.
-
- (Use 'cm ^help ^objectspec' to learn more about repserver and rep specs.)
-
- == CMD_HELP_CHECKDB ==
- Remarks:
-
- - If neither repserverspec nor repspec are specified, the check will be
- performed in the server specified in the client.conf file.
-
- Examples:
-
- cm ^checkdatabase ^repserver:localhost:8084
- cm ^chkdb ^rep:default@localhost:8084
-
- == CMD_DESCRIPTION_CHECKIN ==
- Stores changes in the repository.
-
- == CMD_USAGE_CHECKIN ==
- Usage:
-
- cm ^checkin | ^ci [<item_path>[ ...]]
- [-^c=<str_comment> | -^commentsfile=<comments_file>]
- [--^all|-^a] [--^applychanged] [--^private] [--^update] [--^symlink]
- [--^noshowchangeset]
- [--^machinereadable [--^startlineseparator=<sep>]
- [--^endlineseparator=<sep>] [--^fieldseparator=<sep>]]
-
- Options:
-
- item_path Items to be checked-in. Use double quotes (" ") to
- specify paths containing spaces. Use a whitespace to
- separate item paths.
- Use . to apply checkin to current directory.
- -^c Applies the specified comment to the changeset created
- in the checkin operation.
- -^commentsfile Applies the comment in the specified file to the
- changeset created in the checkin operation.
- --^all | -^a The items changed, moved and deleted locally on the
- given paths are also included.
- --^applychanged Applies the checkin operation to the changed items
- detected in the workspace along with the checked out
- items.
- --^private Private items detected in the workspace are also
- included.
- --^update Processes the update-merge automatically if it
- eventually happens.
- --^symlink Applies the checkin operation to the symlink and not
- to the target.
- --^noshowchangeset Doesn't print the result changeset.
- --^machinereadable Outputs the result in an easy-to-parse format.
- --^startlineseparator Used with the '--^machinereadable' flag, specifies how
- the lines should start.
- --^endlineseparator Used with the '--^machinereadable' flag, specifies how
- the lines should end.
- --^fieldseparator Used with the '--^machinereadable' flag, specifies how
- the fields should be separated.
-
- == CMD_HELP_CHECKIN ==
- Remarks:
-
- - If <item_path> is not specified, the checkin involves all the
- pending changes in the workspace.
- - The checkin operation is always applied recursively from the given path.
- - To checkin an item:
- - The item must be under source code control.
- - If the item is private (not under source code control), the --^private
- flag is necessary in order to checkin it.
- - The item must be checked out.
- - If the item is changed but not checked out, the --^applychanged flag
- is not necessary unless <item_path> is a directory or it contains
- wildcards ('*').
-
- Revision content should be different from previous revision in order to be
- checked in.
-
- Set the PLASTICEDITOR environment variable to specify an editor for
- entering comments. If the PLASTICEDITOR environment variable is set, and
- the comment is empty, the editor will be automatically launched to allow
- you to specify the comment.
-
- Reading input from stdin:
-
- The '^checkin' command can read paths from stdin. To do this, pass a single
- dash "-".
- Example: cm ^checkin -
-
- Paths will be read until an empty line is entered.
- This allows you to use pipe to specify which files to checkin.
- Example:
- dir /S /B *.c | cm ^checkin --^all -
- (In Windows, checkins all .c files in the workspace.)
-
- Examples:
-
- cm ^checkin file1.txt file2.txt
- (Checkins the 'file1.txt' and 'file2.txt' checked-out files.)
-
- cm ^checkin . -^commentsfile=mycomment.txt
- (Checkins the current directory and sets the comment in the
- 'mycomment.txt' file.)
-
- cm ^checkin link --^symlink
- (Checkins the symlink file and not the target.)
-
- cm ^ci file1.txt -^c="my comment"
- (Checkins 'file1.txt' and includes a comment.)
-
- cm ^status --^short --^compact --^changelist=pending_to_review | cm ^checkin -
- (Lists the paths in the changelist named 'pending_to_review' and redirects
- this list to the input of the checkin command.)
-
- cm ^ci . --^machinereadable
- (Checkins the current directory, and prints the result in a simplified,
- easier-to-parse format.)
-
- cm ^ci . --^machinereadable --^startlineseparator=">" --^endlineseparator="<" --^fieldseparator=","
- (Checkins the current directory, and prints the result in a simplified,
- easier-to-parse format, starting and ending the lines, and
- separating the fields with the specified strings.)
-
- == CMD_DESCRIPTION_CHECKOUT ==
- Marks files as ready to modify.
-
- == CMD_USAGE_CHECKOUT ==
- Usage:
-
- cm ^checkout | ^co [<item_path>[ ...]] [-^R | -^r | --^recursive]
- [--^format=<str_format>]
- [--^errorformat=<str_format>] [--^resultformat=<str_format>]
- [--^silent] [--^symlink] [--^ignorefailed]
- [--^machinereadable [--^startlineseparator=<sep>]
- [--^endlineseparator=<sep>] [--^fieldseparator=<sep>]]
-
- Options:
-
- item_path Items to be checked-out. Use double quotes (" ") to
- specify paths containing spaces. Use a whitespace to
- separate item paths.
- Use . to apply checkout to current directory.
- -^R Checks out files recursively.
- --^format Retrieves the output progress message in a specific
- format. Check the examples for more information.
- --^resultformat Retrieves the output result message in a specific
- format. Check the examples for more information.
- --^silent Does not show any output at all.
- --^symlink Applies the checkout operation to the symlink and not
- to the target.
- --^ignorefailed If an item cannot be locked (the exclusive checkout
- cannot be performed), the checkout operation will
- continue without it.
- --^machinereadable Outputs the result in an easy-to-parse format.
- --^startlineseparator Used with the '--^machinereadable' flag, specifies how
- the lines should start.
- --^endlineseparator Used with the '--^machinereadable' flag, specifies how
- the lines should end.
- --^fieldseparator Used with the '--^machinereadable' flag, specifies how
- the fields should be separated.
-
- == CMD_HELP_CHECKOUT ==
- Remarks:
-
- To checkout an item:
- - The item must be under source code control.
- - The item must be checked-in.
-
- If locks are configured on the server (lock.conf exists), then each time
- a checkout on a path happens, Plastic checks if it meets any of the rules
- and if so, the path will be in exclusive checkout (locked) so that none can
- simultaneously checkout.
- You can get all the locks in the server by using 'cm ^lock ^list'.
- See the Administrator Guide for more information:
- https://www.plasticscm.com/download/help/adminguide
-
- The format string replaces the placeholder '{0}' with the path of the item
- being checked out. Check the examples to see how to use it.
-
- Reading input from stdin:
-
- The '^checkout' command can read paths from stdin. To do this, pass a single
- dash "-".
- Example: cm ^checkout -
-
- Paths will be read until an empty line is entered.
- This allows you to use pipe to specify which files to checkout.
- Example:
- dir /S /B *.c | cm ^checkout -
- (In Windows, checkouts all .c files in the workspace.)
-
- Examples:
-
- cm ^checkout file1.txt file2.txt
- (Checkouts 'file1.txt' and 'file2.txt' files.)
-
- cm ^co *.txt
- (Checkouts all txt files.)
-
- cm ^checkout .
- (Checkouts current directory.)
-
- cm ^checkout -^R c:\workspace\src
- (Recursively checkouts 'src' folder.)
-
- cm ^co file.txt --^format="Checking out item {0}"
- --^resultformat="Item {0} checked out"
- (Checkouts 'file.txt' using the specified formatting strings
- to show the progress and the result of the operation.)
-
- cm ^checkout link --^symlink
- (Checkouts the symlink file and not the target.)
-
- cm ^checkout . -^R --^ignorefailed
- (Recursively checkouts the current folder, ignoring those files that can
- not be checked out.)
-
- cm ^co . --^machinereadable --^startlineseparator=">"
- (Checkouts the current directory, and prints the result in a simplified,
- easier-to-parse format, starting the lines with the specified strings.)
-
- == CMD_DESCRIPTION_CHECKSELECTORSYNTAX ==
- Checks the syntax of a selector.
-
- == CMD_USAGE_CHECKSELECTORSYNTAX ==
- Usage:
-
- cm ^checkselectorsyntax | ^css --^file=<selector_file>
- (Checks the selector file syntax.)
-
- ^cat <selector_file> | cm ^checkselectorsyntax | ^css -
- (Unix. Checks selector file from standard input.)
-
- ^type <selector_file> | cm ^checkselectorsyntax | ^css -
- (Windows. Checks selector file from standard input.)
-
-
- --^file The file to read a selector from.
-
- == CMD_HELP_CHECKSELECTORSYNTAX ==
- Remarks:
-
- This command reads a selector on either a file or standard input, and
- checks it for valid syntax. If the syntax check fails, the reason is
- printed on standard output.
-
- Examples:
-
- cm ^checkselectorsyntax --^file=myselector.txt
- (Checks the syntax of 'myselector.txt' file.)
-
- ^cat myselector.txt | cm ^checkselectorsyntax
- (Checks the syntax of 'myselector.txt' from standard input.)
-
- == CMD_DESCRIPTION_CHGREVTYPE ==
- Changes an item revision type (binary or text).
-
- == CMD_USAGE_CHGREVTYPE ==
- Usage:
-
- cm ^changerevisiontype | ^chgrevtype | ^crt <item_path>[ ...] --^type=(^bin | ^txt)
-
- item_path Items to change revision type. Use double quotes (" ")
- to specify paths containing spaces. Use a whitespace to
- separate item paths.
- --^type Target revisions type. Choose '^bin' or '^txt'.
-
- == CMD_HELP_CHGREVTYPE ==
- Remarks:
-
- This command can only be applied to files, not directories.
- The specified type must be a system supported one: '^bin' or '^txt' (binary
- or text).
-
- Examples:
-
- cm ^changerevisiontype c:\workspace\file.txt --^type=^txt
- (Changes 'file.txt' revision type to text.)
-
- cm ^chgrevtype comp.zip "image file.jpg" --^type=^bin
- (Changes 'comp.zip' and "image file.jpg" revision type to binary.)
-
- cm ^crt *.* --^type=^txt
- (Changes revision type of all files to text.)
-
- == CMD_DESCRIPTION_TRIGGER_EDIT ==
- Edits a trigger.
-
- == CMD_USAGE_TRIGGER_EDIT ==
- Usage:
-
- cm ^trigger | ^tr ^edit <subtype_type> <position_number>
- [--^position=<new_position>]
- [--^name=<new_name>] [--^script=<script_path>]
- [--^filter=<str_filter>] [--^server=<repserverspec>]
-
- subtype_type Trigger execution and trigger operation.
- (Use 'cm ^showtriggertypes' to see a list of trigger
- types.)
- position_number Position occupied by the trigger to be modified.
-
- Options:
-
- --^position New position of the specified trigger.
- This position must not be in use by another
- trigger of the same type.
- --^name New name of the specified trigger.
- --^script New execution path of the specified trigger script.
- If the script starts with "^webtrigger ", it will be
- considered as a web trigger. See Remarks for more
- further details.
- --^filter Checks only items that match the specified filter.
- --^server Modifies the trigger on the specified server.
- If no server is specified, executes the command on the
- one configured on the client.
- (Use 'cm ^help ^objectspec' to learn more about server
- specs.)
-
- == CMD_HELP_TRIGGER_EDIT ==
- Remarks:
-
- Web triggers: A web trigger is created by typing "^webtrigger <target-uri>"
- as the trigger command. In this case, the trigger will execute a POST query
- against the specified URI, where the request body contains a JSON
- dictionary with the trigger environment variables, and a fixed INPUT key
- pointing to an array of strings.
-
- Examples:
-
- cm ^trigger ^edit ^after-setselector 6 --^name="Backup2 manager" --^script="/new/path/al/script"
- cm ^tr ^edit ^before-mklabel 7 --^position=4 --^server=myserver:8084
- cm ^trigger ^edit ^after-add 2 --^script="^webtrigger http://myserver.org/api"
-
- == CMD_DESCRIPTION_CODEREVIEW ==
- Creates, edits, or deletes code reviews.
-
- == CMD_USAGE_CODEREVIEW ==
- Usage:
-
- cm ^codereview <spec> <title> [--^status=<status_name>]
- [--^assignee=<user_name>] [--^format=<str_format>]
- [--^repository=<rep_spec>]
- (Creates a code review.)
-
- cm ^codereview -^e <id> [--^status=<status_name>] [--^assignee=<user_name>]
- [--^repository=<rep_spec>]
- (Edits a code review.)
-
- cm ^codereview -^d <id> [ ...] [--^repository=<rep_spec>]
- (Deletes one or more code reviews.)
-
-
- spec It can be either a changeset spec or a branch spec. It will be
- the target of the new code review. (Use 'cm ^help ^objectspec'
- to learn more about changeset or branch specs.)
- title A text string to be used as title of the new code review.
- id The code review identification number. A GUID can be used as
- well.
-
- Options:
-
- -^e Edits the parameters of an existing code review.
- -^d Deletes one or more existing code reviews. Use a
- whitespace to separate the code reviews IDs.
- --^status Sets the new status of a code review. See Remarks for
- additional information.
- --^assignee Sets the new assignee of a code review.
- --^format Retrieves the output message in a specific format. See
- Remarks for additional information.
- --^repository Sets the repository to be used as default. (Use
- 'cm ^help ^objectspec' to learn more about repository specs.)
-
- == CMD_HELP_CODEREVIEW ==
- Remarks:
-
- This command allows users to manage code reviews: create, edit, and delete
- code reviews for changesets or branches.
-
- To create a new code review, a changeset/branch spec and a title are
- required. The initial status and assignee can be set, too. An ID (or GUID
- if requested) will be returned as a result.
-
- To edit or delete an existing code review, the target code review ID
- (or GUID) is required. No messages are displayed if there are no errors.
-
- The 'status parameter' must only be one of the following: ^"Under review"
- (default), ^"Reviewed", or ^"Rework required".
-
- The 'repository' parameter is available to set the default working
- repository. This is useful when the user wants to manage reviews on
- a server different than the one associated to the current workspace, or
- when there is no current workspace at all.
-
- Output format parameters (--^format option):
- This command accepts a format string to show the output.
- The output parameters of this command are the following:
- {0} id
- {1} guid
-
- Please note that the '--^format' parameter only takes effect when creating
- a new code review.
-
- Examples:
-
- cm ^codereview ^cs:1856@myrepo@myserver:8084 "My code review" --^assignee=dummy
- cm ^codereview ^br:/main/task001@myrepo@myserver:8084 "My code review" \
- --^status=^"Rework required" --^assignee=newbie --^format="{^id} -> {^guid}"
-
- cm ^codereview 1367 -^e --^assignee=new_assignee
- cm ^codereview -^e 27658884-5dcc-49b7-b0ef-a5760ae740a3 --^status=Reviewed
-
- cm ^codereview -^d 1367 --^repository=myremoterepo@myremoteserver:18084
- cm ^codereview 27658884-5dcc-49b7-b0ef-a5760ae740a3 -^d
-
- == CMD_DESCRIPTION_CRYPT ==
- Encrypts a password.
-
- == CMD_USAGE_CRYPT ==
- Usage:
-
- cm ^crypt <mypassword>
-
- mypassword Password to be encrypted.
-
- == CMD_HELP_CRYPT ==
- Remarks:
-
- This command encrypts a given password passed as argument.
- It is designed to encrypt passwords in configuration files and increase
- safety.
-
- Examples:
-
- cm ^crypt dbconfpassword -> ENCRYPTED: encrypteddbconfpassword
- (Encrypts the password in the database configuration file: 'db.conf'.)
-
- == CMD_DESCRIPTION_DEACTIVATEUSER ==
- Deactivates a licensed user.
-
- == CMD_USAGE_DEACTIVATEUSER ==
- Usage:
-
- cm ^deactivateuser | ^du <usr_name>[ ...] [--^server=<name:port>]
- [--^nosolveuser]
-
- usr_name The user name(s) to deactivate. Use a whitespace to
- separate user names.
- If SID, then '--^nosolveuser' is required.
-
- Options:
-
- --^server Deactivates the user on the specified server.
- If no server is specified, executes the command on the
- one configured on the client.
- --^nosolveuser With this option, the command will not check whether
- the user name exists on the authentication system. The
- <usr_name> must be a user SID.
-
- == CMD_HELP_DEACTIVATEUSER ==
- Remarks:
-
- This command sets a user to inactive, disabling the usage of Plastic SCM
- for that user.
-
- See the 'cm ^activateuser' command for more information about activating
- Plastic SCM users.
-
- This command checks whether the user exists on the underlying authentication
- system (e.g. ActiveDirectory, LDAP, User/Password...).
- To force the deactivation of a user that no longer exists on the
- authentication system, you can use the '--^nosolveuser' option.
-
- Examples:
-
- cm ^deactivateuser john
- cm ^du peter "mary collins"
- cm ^deactivateuser john --^server=myserver:8084
- cm ^deactivateuser S-1-5-21-3631250224-3045023395-1892523819-1107 --^nosolveuser
-
- == CMD_DESCRIPTION_DIFF ==
- Shows differences between files, changesets, and labels.
-
- == CMD_USAGE_DIFF ==
- Usage:
-
- cm ^diff <csetspec> | <lbspec> | <shspec> [<csetspec> | <lbspec> | <shspec>]
- [<path>]
- [--^added] [--^changed] [--^moved] [--^deleted]
- [--^repositorypaths] [--^download=<download_path>]
- [--^encoding=<name>]
- [--^comparisonmethod=(^ignoreeol | ^ignorewhitespaces |
- ^ignoreeolandwhitespaces | ^recognizeall)]
- [--^clean]
- [--^format=<str_format>] [--^dateformat=<str_format>]
-
- Shows differences between a 'source' changeset or shelveset, and a
- 'destination' changeset or shelveset. The changesets can be specified
- using either a changeset or label specification.
- Where two specifications are given, the first will be the 'source' of
- the diff; the second, the 'destination'.
- If only one specification is given, the 'source' will be the parent
- changeset of the specified 'destination'.
- If an optional path is specified, the Diff window will launch to show
- differences between the two revision of that file.
-
- cm ^diff <revspec1> <revspec2>
-
- Shows differences between a pair of revisions. The differences are
- shown in the Diff window. The first revision specified will appear on
- the left.
-
- cm ^diff <brspec> [--^added] [--^changed] [--^moved] [--^deleted]
- [--^repositorypaths] [--^download=<download_path>]
- [--^encoding=<name>]
- [--^comparisonmethod=(^ignoreeol | ^ignorewhitespaces |
- ^ignoreeolandwhitespaces | ^recognizeall)]
- [--^clean]
- [--^format=<str_format>] [--^dateformat=<str_format>]
- [--^fullpaths | --^fp]
-
- Shows the branch differences.
-
- (Use 'cm ^help ^objectspec' to learn more about specs.)
-
- Options:
-
- --^added Prints only differences consisting of items added to
- the repository.
- --^changed Prints only differences consisting of items that
- changed.
- --^moved Prints only differences consisting of moved or renamed
- items.
- --^deleted Prints only differences consisting of items that were
- deleted.
-
- If '--^added', '--^changed', '--^moved' or '--^deleted' are
- not specified, then the command prints all differences.
- '^A' means added items.
- '^C' means changed items.
- '^D' means deleted items.
- '^M' means moved items. The left item is the original,
- the right is the destination.
-
- --^repositorypaths Prints repository paths instead of workspace paths.
- (This option overrides the '--^fullpaths' option.)
- --^download Stores the differences content in the specified output
- path.
- --^encoding Specifies the output encoding, i.e.: utf-8.
- See the MSDN documentation at
- http://msdn.microsoft.com/en-us/library/system.text.encoding.aspx
- to get the table of supported encodings and its format,
- (at the end of the page, in the "Name" column).
- --^comparisonmethod Sets the specified comparison method. See Remarks for more info.
- --^clean Does not take into account the differences generated
- because of a merge, but only the differences created by
- simple checkins.
- --^format Retrieves the output message in a specific format. See
- Remarks for more info.
- --^dateformat Format used to output dates.
- --^fullpaths, --^fp Forces printing full workspace paths for files and
- directories when possible.
-
- == CMD_HELP_DIFF ==
- Remarks:
-
- Comparison methods (--^comparisonmethod option):
- ^ignoreeol Ignores the end of line differences.
- ^ignorewhitespaces Ignores the whitespace differences.
- ^ignoreeolandwhitespaces Ignores the end of line and whitespace differences.
- ^recognizeall Detects the end of line and whitespace differences.
-
- This command accepts a format string to show the output.
- The parameters of this command are the following:
- {^path} Item path.
- {^date} Change date/time.
- {^owner} Change author.
- {^revid} Revision id of the revision considered as the
- destination in the diff.
- {^parentrevid} Revision id of the parent of the revision considered
- as the destination of the diff.
- {^baserevid} Revision id of the revision considered as the source
- in the diff.
- {^srccmpath} Server path before moving the item (move operation).
- {^dstcmpath} Server path after moving the item (move operation).
- {^type} Item type:
- ^D directory,
- ^B binary file,
- ^F text file,
- ^S symlink,
- ^X Xlink.
- {^repository} Repository of the item.
- {^status} Item status:
- ^A added,
- ^D deleted,
- ^M moved,
- ^C changed.
- {^fsprotection} Shows item permissions (Linux/Mac chmod).
- {^srcfsprotection} Shows parent revision item permissions.
- {^newline} Inserts a new line.
-
- Notes on '^revid':
- For added items, the '^baserevid' and '^parentrevid' will be -1, as no
- previous revision exists in this case.
- For deleted items, the '^revid' is the id of the source revision, and the
- '^baserevid' will be -1, as there is no destination revision.
- For Xlinks, both '^baserevid' and '^parentrevid' are always -1.
-
- Examples:
-
- Comparing branches:
-
- cm ^diff ^br:/main/task001
- cm ^diff ^br:/main/task001 \doc\readme.txt
-
- Comparing changeset trees:
-
- cm ^diff 19
- cm ^diff 19 25
- cm ^diff ^cs:19 ^cs:25 --^format="{^path} {^parentrevid}"
- cm ^diff ^cs:19 ^cs:23 --^format="{^date} {^path}" --^dateformat="yy/dd/MM HH:mm:ss"
- cm ^diff ^cs:19 ^cs:23 --^changed
- cm ^diff ^cs:19 ^cs:23 --^repositorypaths
- cm ^diff ^cs:19 ^cs:23 --^download="D:\temp"
- cm ^diff ^cs:19 ^cs:23 --^clean
- cm ^diff ^cs:19 ^cs:23 \doc\readme.txt
-
- Comparing label trees:
-
- cm ^diff ^lb:FirstReleaseLabel ^lb:SecondReleaseLabel
- cm ^diff ^lb:tag_193.2 ^cs:34214
- cm ^diff ^cs:31492 ^lb:tag_193.2
-
- Comparing shelve trees:
-
- cm ^diff ^sh:2
- cm ^diff ^sh:2 ^sh:4
-
- Comparing revspecs:
-
- cm ^diff ^rev:readme.txt#^cs:19 ^rev:readme.txt#^cs:20
- cm ^diff ^serverpath:/doc/readme.txt#^cs:19@myrepo \
- ^serverpath:/doc/readme.txt#^br:/main@myrepo@localhost:8084
- cm ^diff ^rev:foo.c#^cs:1 ^rev:foo.c#^cs:2 --^comparisonmethod=^ignoreeol
-
- == CMD_DESCRIPTION_DIFFMETRICS ==
- Shows diff metrics between two revs.
-
- == CMD_USAGE_DIFFMETRICS ==
- Usage:
-
- cm ^diffmetrics | ^dm <revspec1> <revspec2> [--^format=<str_format>]
- [--^encoding=<name>]
- [--^comparisonmethod=(^ignoreeol | ^ignorewhitespaces |
- ^ignoreeolandwhitespaces | ^recognizeall)]
-
- revspec Revisions used to compare.
- (Use 'cm ^help ^objectspec' to learn more about rev specs.)
-
- Options:
-
- --^format Retrieves the output message in a specific format. See
- Remarks for more info.
- --^encoding Specifies the output encoding, i.e.: utf-8.
- See the MSDN documentation at
- http://msdn.microsoft.com/en-us/library/system.text.encoding.aspx
- to get the table of supported encodings and its format,
- (at the end of the page, in the "Name" column).
- --^comparisonmethod Sets the specified comparison method.
- See Remarks for more info.
-
- == CMD_HELP_DIFFMETRICS ==
- Remarks:
-
- The metrics are: number of changed, added, and deleted lines.
-
- Output format parameters (--^format option):
- This command accepts a format string to show the output.
- The output parameters of this command are the following:
- {0} Number of changed lines.
- {1} Number of added lines.
- {2} Number of deleted lines.
-
- Comparison methods (--^comparisonmethod option):
- ^ignoreeol Ignores the end of line differences.
- ^ignorewhitespaces Ignores the whitespace differences.
- ^ignoreeolandwhitespaces Ignores the end of line and whitespace differences.
- ^recognizeall Detects the end of line and whitespace differences.
-
- Examples:
-
- cm ^diffmetrics file.txt#^cs:2 file.txt#^br:/main/scm0211 \
- --^format="There are {0} changed, {1} added and {2} deleted lines."
- (Retrieves diffmetrics results formatted.)
-
- cm ^dm file.txt#^cs:2 file.txt#^cs:3 --^encoding=utf-8 --^comparisonmethod=^ignorewhitespaces
-
- == CMD_DESCRIPTION_FASTEXPORT ==
- Exports a repository in fast-export format.
-
- == CMD_USAGE_FASTEXPORT ==
- Usage:
-
- cm ^fast-export | ^fe <repspec> <fast-export-file>
- [--^import-marks=<marks_file>]
- [--^export-marks=<marks_file>]
- [--^branchseparator=<chr_separator>]
- [--^nodata] [--^from=<changesetid>] [--^to=<changesetid>]
-
- Options:
-
- repspec The repository which the data will be exported from.
- (Use 'cm ^help ^objectspec' to learn more about rep specs.)
- fast-export-file The file with the repository data in Git fast-export
- format.
- --^import-marks The marks file used for incremental imports. This file
- has been previously exported by '--^export-marks'. The
- changesets described in this file will not be imported
- because they were already in a previous import.
- --^export-marks The file where the imported changesets will be saved.
- This file is used in a later fast-import to signal the
- changesets that have been already imported.
- --^branchseparator Plastic SCM uses "/" as default separator in the branch
- hierarchy. This option allows using char as a hierarchy
- separator, so main-task-sub would be mapped in Plastic
- SCM as /main/task/sub.
- --^nodata Exports the repository without including the data. This
- is useful to check if the export will run correctly.
- --^from Exports from a particular changeset.
- --^to Exports to a particular changeset.
-
- == CMD_HELP_FASTEXPORT ==
- Remarks:
-
- - To import a Plastic SCM repository to Git, use a command such as:
- ^cat repo.fe.00 | ^git ^fast-import --^export-marks=marks.git --^import-marks=marks.git
-
- - Incremental export is supported using a marks file that contains the
- changesets previously imported ('--^import-marks' and '--^export-marks'
- files).
- This means that only the new changesets that were not exported in the
- previous fast-export will be exported.
-
- Examples:
-
- cm ^fast-export repo@localhost:8087 repo.fe.00 --^import-marks=marks.cm \
- --^export-marks=marks.cm
- (Exports the repository 'repo' in the local server into the 'repo.fe.00'
- file in Git fast-export format and creates the marks files to perform
- incremental exports later.)
-
- cm ^fast-export repo@localhost:8087 repo.fe.00 --^from=20
- (Exports the repository 'repo' in the local server into the 'repo.fe.00'
- file in Git fast-export format from changeset '20'.)
-
- == CMD_DESCRIPTION_FASTIMPORT ==
- Imports Git fast-export data into a repository.
-
- == CMD_USAGE_FASTIMPORT ==
- Usage:
-
- cm ^fast-import | ^fi <repspec> <fast-export-file>
- [--^import-marks=<marks_file>]
- [--^export-marks=<marks_file>]
- [--^stats] [--^branchseparator=<chr_separator>]
- [--^nodata] [--^ignoremissingchangesets] [--^mastertomain]
-
- Options:
-
- repspec The repository into which the data will be
- imported. It is created if it did not previously
- exist. (Use 'cm ^help ^objectspec' to learn more
- about rep specs.)
- fast-export-file The file with the repository data in Git
- fast-export format.
- --^import-marks The marks file used for incremental imports.
- This file has been previously exported by
- '--^export-marks'. The changesets described in
- this file wont be imported because they
- were already in a previous import.
- --^export-marks The file where the imported changesets will
- be saved. This file is used in a later
- fast-import to signal the changesets that have
- been already imported.
- --^stats Prints some statistics about the import process.
- --^branchseparator Plastic SCM uses "/" as default separator in
- the branch hierarchy. This option allows using
- char as a hierarchy separator, so main-task-sub
- would be mapped in Plastic SCM as /main/task/sub.
- --^nodata Imports Git fast-export without including the
- data. This is useful to check if the import will
- run correctly.
- --^ignoremissingchangesets Any changesets that cannot be imported are
- discarded and the fast-import operation
- continues without them.
- --^mastertomain Imports using "^main" instead of "^master".
-
- == CMD_HELP_FASTIMPORT ==
- Remarks:
-
- - To export a Git repository, use a command such as:
- ^git ^fast-export --^all -^M --^signed-tags=^strip --^tag-of-filtered-object=^drop> ..\git-fast-export.dat
- The -^M option is important to detect moved items.
-
- - The specified repository is created in case it did not exist.
-
- - Incremental import is supported using a marks file that contains the
- changesets previously imported ('--^import-marks' and '--^export-marks'
- files).
- This means that only the new changesets that were not imported in the
- previous fast-import will be imported.
-
- Examples:
-
- cm ^fast-import mynewrepo@atenea:8084 repo.fast-export
- (Imports the contents exported in the 'repo.fast-export' file into
- 'mynewrepo' repository on server 'atenea:8084'.)
-
- cm ^fast-import repo@atenea:8084 repo.fast-export --^export-marks=rep.marks
- (Imports the contents exported in the 'repo.fast-export' file into
- 'repo' repository on server 'atenea:8084' and creates a marks file
- to perform incremental imports later.)
-
- cm ^fast-import repo@server:8084 repo.fast-export --^import-marks=repo.marks \
- --^export-marks=repo.marks
- (Imports the contents of the 'repo.fast-export' file. Only the new
- changesets that were not in the marks file are imported. The same marks
- file is used to save the list of changesets again for the next
- incremental import.)
-
- == CMD_DESCRIPTION_FILEINFO ==
- Retrieves detailed information about the items in the workspace.
-
- == CMD_USAGE_FILEINFO ==
- Usage:
-
- cm ^fileinfo <item_path>[ ...] [--^fields=<field_value>[,...]]
- [[--^xml | -^x [=<output_file>]] | [--^format=<str_format>]]
- [--^symlink] [--^encoding=<name>]
-
- item_path Items to display. Use a whitespace to separate the items.
- Use double quotes (" ") to specify paths containing spaces.
-
- Options:
-
- --^fields A string of comma-separated values. This selects which
- fields will be printed for each item. See Remarks for
- more information.
- --^xml | -^x Prints the output in XML format to the standard output.
- It is possible to specify an output file. This option
- cannot be combined with '--^format'.
- --^format Retrieves the output message in a specific format. See
- Remarks for more info. This option cannot be combined
- with '--^xml'.
- This '--^format' option prevails over '--^fields' if both
- are specified.
- --^symlink Applies the fileinfo operation to the symlink and not
- to the target.
- --^encoding Specifies the output encoding, i.e.: utf-8.
- See the MSDN documentation at
- http://msdn.microsoft.com/en-us/library/system.text.encoding.aspx
- to get the table of supported encodings and its format,
- (at the end of the page, in the "Name" column).
-
-
- == CMD_HELP_FILEINFO ==
- Remarks:
-
- This command prints a detailed list of attributes for each selected item.
- Each attribute is printed on a new line by default.
-
- The attribute list can be modified to display only the attributes the user
- needs. This can be achieved using the '--^fields=<field_list>' which accepts
- a string of comma-separated attribute names. This way, only those arguments
- whose name has been indicated are shown.
-
- Revision head changeset:
-
- This option is disabled by default. Please note that retrieving this
- attribute is significantly slower than the rest of them, so we advise users
- to group together as many items as possible. This will improve execution
- times by avoiding many separate 'cm ^fileinfo' executions.
- Also, this feature is not currently available for controlled directories.
-
- You can find below the complete list of available attribute names.
- Names marked with an asterisk ('*') will not be shown by default:
- ^ClientPath The local path on disk for the item.
- ^RelativePath The workspace-relative path.
- ^ServerPath The repository path for the item.
- (Note: Transformed workspaces are not
- currently supported for this option).
- ^Size Item size.
- ^Hash Item hash sum.
- ^Owner The user the item belongs to.
- ^RevisionHeadChangeset (*) The changeset of the revision loaded in the
- head changeset of the branch.
- (Please see note above.)
- ^RevisionChangeset The changeset of the revision currently loaded
- in the workspace.
- ^RepSpec The repository specification for the item.
- (Use 'cm ^help ^objectspec' to learn more about
- rep specs.)
- ^Status The workspace item status: added, checked out,
- deleted, etc.
- ^Type Revision type (text, binary, directory, symlink,
- or unknown).
- ^Changelist The changelist the item belongs to (if any).
- ^IsLocked (*) Whether the item is locked by exclusive
- checkout or not.
- ^LockedBy (*) The user who exclusively checked out the item.
- ^LockedWhere (*) The location where the item was exclusively
- checked out.
- ^IsUnderXlink Whether the item is located under an Xlink
- or not.
- ^UnderXlinkTarget The target of the Xlink the item is under
- (if any).
- ^UnderXlinkPath The item server path in the Xlinked repository
- (if any).
- ^UnderXlinkWritable Whether the Xlink the item belongs to is
- writable or not.
- ^UnderXlinkRelative Whether the Xlink the items belongs to is
- relative or not.
- ^IsXlink Whether the item itself is a Xlink or not.
- ^XlinkTarget The target repository the item points to, if it
- is a Xlink.
- ^XlinkName The Xlink name of the item, if it is
- actually one.
- ^XlinkWritable Whether the Xlink item is a writable Xlink
- or not.
- ^XlinkRelative Whether the Xlink item is a relative Xlink
- or not.
-
-
- Output format parameters (--^format option):
- This command accepts a format string to show the output.
- The output parameters of this command are the following:
- {^ClientPath}
- {^RelativePath}
- {^ServerPath}
- {^Size}
- {^Hash}
- {^Owner}
- {^RevisionHeadChangeset}
- {^RevisionChangeset}
- {^Status}
- {^Type}
- {^Changelist}
- {^IsLocked}
- {^LockedBy}
- {^LockedWhere}
- {^IsUnderXlink}
- {^UnderXlinkTarget}
- {^UnderXlinkPath}
- {^UnderXlinkWritable}
- {^UnderXlinkRelative}
- {^IsXlink}
- {^XlinkTarget}
- {^XlinkName}
- {^XlinkWritable}
- {^XlinkRelative}
- {^RepSpec}
-
- Please note that '--^format' and '--^xml' options are mutually exclusive, so
- they can't be used at the same time.
-
- Examples:
-
- cm ^fileinfo file1.txt file2.txt dir/
- cm ^fileinfo "New Project.csproj" --^xml
- cm ^fileinfo assets.art --^fields=^ServerPath,^Size,^IsLocked,^LockedBy
- cm ^fileinfo proj_specs.docx --^fields=^ServerPath,^RevisionChangeset --^xml
- cm ^fileinfo samples.ogg --^format="{^ServerPath}[{^Owner}] -> {^Size}"
-
- == CMD_DESCRIPTION_FIND_QUERY ==
- Runs SQL-like queries to find Plastic SCM objects.
-
- == CMD_USAGE_FIND_QUERY ==
- Usage:
-
- cm ^find <object_type>
- [^where <str_conditions>]
- [^on ^repository '<repspec>' | ^on ^repositories '<repspec1>','<repspec2>'[,...]]
- [^order ^by <sort_field> ['^asc' | '^desc']]
- [[^limit <maxresults>] [^offset <offset>]]
- [--^format=<str_format>] [--^dateformat=<date_format>]
- [--^nototal] [--^file=<dump_file>] [--^xml]
- [--^encoding=<name>]
-
- object_type Object type to find.
- Some of these objects are implementing the '^order ^by' clause.
- Use 'cm ^help ^showfindobjects' to learn how to specify these
- objects, the ones allowing '^order ^by' and by what fields.
- You can also read the 'cm ^find' guide:
- https://www.plasticscm.com/download/help/cmfind
-
- Options:
-
- str_conditions Searches conditions on an object attributes.
- repspec Searches repositories alias or specification.
- In the case of '^on ^repositories', use a comma to
- separate the repspec fields.
- (Use 'cm ^help ^objectspec' to learn more about repository
- specifications.)
- sort_field The name of the field to use as sorting field. Mind there is only
- a subset of field possibilities. Use 'cm ^help ^showfindobjects'
- to find what objects are allowed to be ordered and by what fields.
- maxresults The maximun number of results returned by the query.
- offset The number of rows to skip before starting to return results
- from the query.
- --^format Retrieves the output message in a specific format.
- Read the 'cm ^find' guide to see all the object
- attributes that can be used as output format strings:
- https://www.plasticscm.com/download/help/cmfind
- --^dateformat Format used to output dates.
- --^nototal Does not output record count at the end.
- --^file File to dump results.
- --^xml Prints the output in XML format to the standard output.
- --^encoding Specifies the output encoding, i.e.: utf-8.
- See the MSDN documentation at
- http://msdn.microsoft.com/en-us/library/system.text.encoding.aspx
- to get the table of supported encodings and its format,
- (at the end of the page, in the "Name" column).
-
- == CMD_HELP_FIND_QUERY ==
- Remarks:
-
- If no repository is specified, the search is made on the repository
- configured in the workspace.
-
- When you run queries using comparison operators (>, <, >=, <=) from the
- command line, remember that the shell considers these operators as IO
- redirections. So you will need to enclose the queries in double quotation
- marks.
-
- The 'cm ^find' command accepts a format string to show the output.
- Each output parameter is identified by a string and the user can refer it
- by typing the parameter number between '{' and '}' brackets.
- Output parameters usually correspond to the attributes of the object.
-
- These are some valid output format strings:
- --^format={^id}{^date}{^name}
- --^format="{^item}#{^branch} ^with ^date {^date}"
-
- XML and encoding considerations:
-
- When the '--^xml' option is specified, the command shows the command result
- as an XML text in the standard output. The operating system default encoding
- is used to show the text, so it is possible that not-ANSI characters are
- incorrectly visualized in the console. If you redirect the command output to
- a file, it will be correctly visualized. When both '--^xml' and '--^file'
- options are specified, the default encoding will be utf-8.
-
- Examples:
-
- cm ^find ^revision
- cm ^find ^revision "^where ^changeset=23 ^and ^owner='maria'"
- cm ^find ^branch "^on ^repository 'rep1'"
- cm ^find ^label "^on ^repositories 'rep1', '^rep:default@localhost:8084'"
- cm ^find ^branch "^where ^parent='^br:/main' ^on ^repository 'rep1'"
- cm ^find ^revision "^where ^item='^item:.'" --^format="{^item}#{^branch}"
- cm ^find ^revision "^where ^item='^item:.'" --^xml --^file=c:\queryresults\revs.xml
- cm ^find ^label "^where ^owner='^me' ^limit 10 ^offset 20"
- cm ^find ^branches "^where ^owner='^me' ^order ^by ^branchname ^desc ^limit 10"
-
- == CMD_DESCRIPTION_FINDCHANGED ==
- Gets a list of changed files. This command is deprecated and kept just for
- backwards compatibility. Use 'cm ^status' instead.
-
- == CMD_USAGE_FINDCHANGED ==
- Usage:
-
- cm ^findchanged | ^fc [-^R | -^r | --^recursive] [--^checkcontent]
- [--^onlychanged] [<path>]
-
- Options:
-
- -^R Recursively finds in directories.
- --^checkcontent Compares files by content.
- --^onlychanged Finds only changed files; checkouts will not be
- obtained.
- path (Default: current directory.)
- Initial path to find changed files.
-
- == CMD_HELP_FINDCHANGED ==
- Remarks:
-
- If no '--^checkcontent' option is given, Plastic finds changes based on the
- file timestamp.
- When '--^checkcontent' option is specified, the file or folder contents are
- compared, instead of using the timestamp.
-
- This command is useful to detect changed files while disconnected from
- the Plastic SCM server.The output can be piped to the ^checkout command,
- to check the changes later (see examples).
-
- Examples:
-
- cm ^findchanged .
- (Finds changed files in the current directory.)
-
- cm ^findchanged -^R . | cm ^checkout -
- (Checkouts changed elements.)
-
- == CMD_DESCRIPTION_FINDCHECKEDOUT ==
- Gets a list of checked out items. This command is deprecated and kept just for
- backwards compatibility. Use 'cm ^status' instead.
-
- == CMD_USAGE_FINDCHECKEDOUT ==
- Usage:
-
- cm ^findcheckouts | ^fco [--^format=<str_format>] [--^basepath]
-
- Options:
-
- --^format Retrieves the output message in a specific format. See
- Remarks for more info.
- --^basepath The path to start searching checkouts from. If not
- specified, the current path is used.
-
- == CMD_HELP_FINDCHECKEDOUT ==
- Remarks:
-
- This command is useful to checkin or undocheckout all checked out items in
- one single step, redirecting the standard output to other command.
- See examples.
-
- Output format parameters (--^format option):
- This command accepts a format string to show the output.
- The output parameters of this command are the following:
- {0} Date.
- {1} Owner.
- {2} Workspace info.
- {3} Client machine name.
- {4} Item path.
- {5} Branch and repository info.
-
- Examples:
-
- cm ^findcheckouts --^format="File {4} changed on branch {5}"
- (Finds checked out items and formats the output with file path and branch
- and repository info.)
-
- cm ^findcheckouts --^format={4} | cm ^checkin -
- (Checkins all checked out items.)
-
- cm ^findcheckouts --^format={4} | cm ^undocheckout -
- (Undocheckouts of all checked out items.)
-
- == CMD_DESCRIPTION_FINDPRIVATE ==
- Gets a list of private items. This command is deprecated and kept just for
- backwards compatibility. Use 'cm ^status' instead.
-
- == CMD_USAGE_FINDPRIVATE ==
- Usage:
- cm ^findprivate | ^fp [-^R | -^r | --^recursive] [--^exclusions] [<path>]
-
- Options:
-
- -^R Recursively finds in directories.
- --^exclusions This option allows cutting the search inside the ignored
- paths, defined by the file ignore.conf.
- path (Default: current directory.)
- Initial path to find private files.
-
- == CMD_HELP_FINDPRIVATE ==
- Remarks:
-
- If any path is specified, Plastic SCM will begin searching from the
- current directory.
-
- This command is useful to add private items on a folder, piping the output
- to the '^add' command. See examples.
-
- Examples:
-
- cm ^findprivate .
-
- cm ^findprivate -^R | cm ^add -
- (Recursively searches private items and add them.)
-
- == CMD_DESCRIPTION_GETCONFIG ==
- Obtains configuration info.
-
- == CMD_USAGE_GETCONFIG ==
- Usage:
-
- cm ^getconfig [^setfileasreadonly] [^location] [^extensionworkingmode]
- [^extensionprefix] [^defaultrepserver]
-
- ^setfileasreadonly Returns whether the protected files are left as
- read-only or not.
- ^location Returns the client config path.
- ^extensionworkingmode Returns the extension working mode.
- ^extensionprefix Returns the configured extension prefix.
- ^defaultrepserver Returns the location of the default repository
- server.
-
- == CMD_HELP_GETCONFIG ==
- Examples:
-
- cm ^getconfig ^setfileasreadonly
-
- == CMD_DESCRIPTION_GETFILE ==
- Downloads the content of a given revision.
-
- == CMD_USAGE_GETFILE ==
- Usage:
-
- cm ^getfile | ^cat <revspec> [--^file=<output_file>] [--^debug]
- [--^symlink] [--^raw]
-
- revspec Object specification. (Use 'cm ^help ^objectspec' to learn
- more about specs.)
-
- Options:
-
- --^file File to save the output. By default, it is printed on the
- standard output.
- --^debug When a directory specification is used, the command
- shows all the items in the directory, its revision id
- and file system protection.
- --^symlink Applies the operation to the symlink and not to the
- target.
- --^raw Displays the raw data of the file.
-
- == CMD_HELP_GETFILE ==
- Examples:
-
- cm ^cat myfile.txt#^br:/main
- (Obtains the last revision in branch '^br:/main' of 'myfile.txt'.)
-
- cm ^getfile myfile.txt#^cs:3 --^file=tmp.txt
- (Obtains the changeset 3 of 'myfile.txt' and write it to file 'tmp.txt'.)
-
- cm ^cat ^serverpath:/src/foo.c#^br:/main/task003@myrepo
- (Obtains the contents of '/src/foo.c' at the last changeset of branch
- '/main/task003' in repository 'myrepo'.)
-
- cm ^cat ^revid:1230@^rep:myrep@^repserver:myserver:8084
- (Obtains the revision with id 1230.)
-
- cm ^getfile ^rev:info\ --^debug
- (Obtains all revisions in the 'info' directory.)
-
- == CMD_DESCRIPTION_GETREVISION ==
- Loads a revision in the workspace.
-
- == CMD_USAGE_GETREVISION ==
- This command modifies the revision loaded in the workspace, so it can affect
- future merges.
- It is an advanced command inherited from old versions, so use it with care.
-
- Usage:
- cm ^getrevision <revspec>
-
- revspec Object specification. (Use 'cm ^help ^objectspec' to learn
- more about rev specs.)
-
- == CMD_HELP_GETREVISION ==
- Examples:
-
- cm ^getrevision file.txt#^cs:3
- (Gets changeset 3 revision of 'file.txt'.)
-
- == CMD_DESCRIPTION_GETSTATUS ==
- Gets the status of an item.
-
- == CMD_USAGE_GETSTATUS ==
- This is an automation command, meant to be used to automate 'cm' only.
- It is not as user-friendly as it should be.
-
- Usage:
-
- cm ^getstatus | ^gs <item_path>[ ...] [--^format=<str_format>] [--^stats]
- [-^R | -^r | --^recursive]
-
- item_path Item or items to get status from. Use double quotes
- (" ") to specify paths containing spaces. Use a
- whitespace to separate paths.
-
- Options:
-
- --^format Retrieves the output message in a specific format. See
- Remarks for more info.
- --^stats Prints some statistics about the get status process.
- -^R Shows recursively the status in directories.
-
- == CMD_HELP_GETSTATUS ==
- Remarks:
-
- Output format parameters (--^format option):
- This command accepts a format string to show the output.
- The output parameters of this command are the following:
- {0} Item path.
- {1} Item status:
- 0 private,
- 1 checked in,
- 2 checked out.
-
- Reading input from stdin:
-
- The '^getstatus' command can read paths from stdin. To do this, pass a
- single dash "-".
- Example: cm ^getstatus -
-
- Paths will be read until an empty line is entered.
- This allows you to use pipe to specify which paths to get the status for.
- Example:
- dir /S /B *.c | cm ^getstatus --^format="Path {0} Status {1}" -
- (In Windows, gets the status of all .c files in the workspace.)
-
- Examples:
-
- cm ^getstatus file1.txt file2.txt
- (Gets the status of the files.)
-
- cm ^gs info\ -^R --^format="The item {0} has the status {1}"
- (Gets the status of the directory and all of its items and shows a
- formatted output.)
-
- == CMD_DESCRIPTION_GETTASKBRANCHES ==
- Gets branches linked with a task.
-
- == CMD_USAGE_GETTASKBRANCHES ==
- This is an automation command, meant to be used to automate 'cm' only.
- It is not as user-friendly as it should be.
-
- Usage:
-
- cm ^gettaskbranches | ^gtb <task_name> [--^format=<str_format>]
- [--^dateformat=<date_format>]
-
- task_name The task identifier.
-
- Options:
-
- --^format Retrieves the output message in a specific format. See
- Remarks for more info.
- --^dateformat Format used to output dates.
-
- == CMD_HELP_GETTASKBRANCHES ==
- Remarks:
-
- Output format parameters (--^format option):
- This command accepts a format string to show the output.
- The output parameters of this command are the following:
- {^tab} Inserts a tab space.
- {^newline} Inserts a new line.
- {^name} Branch name.
- {^owner} Owner of the branch.
- {^date} Date when the branch was created.
- {^parent} Parent branch.
- {^comment} Comment of the branch.
- {^repname} Repository where the branch exists.
- {^repserver} Server name.
-
- Examples:
-
- cm ^gettaskbranches 4311
- cm ^gtb 4311 --^format="^br:{^name}"
- cm ^gtb 4311 --^format="^br:{^name} {^date}" --^dateformat="yyyy/MM/dd HH:mm:ss"
-
- == CMD_DESCRIPTION_GETWWI ==
- Shows info about the workspace selector.
-
- == CMD_USAGE_GETWWI ==
- Usage:
-
- cm ^workspaceinfo | ^wi [<wk_path>]
-
- Options:
-
- wk_path Path of a workspace on the machine.
-
- == CMD_HELP_GETWWI ==
- Remarks:
- The '^wi' command shows the working configuration of a workspace (repository,
- branch, and/or label).
-
- Examples:
- cm ^wi c:\mywk
-
- == CMD_DESCRIPTION_GWP ==
- Gets workspace info from a path.
-
- == CMD_USAGE_GWP ==
- This is an automation command, meant to be used to automate 'cm' only.
- It is not as user-friendly as it should be.
-
- Usage:
-
- cm ^getworkspacefrompath | ^gwp <item_path> [--^format=<str_format>] [--^extended]
-
- item_path File or folder on disk.
-
- Options:
- --^format Retrieves the output message in a specific format. See
- Remarks for more info.
- --^extended Displays more information regarding the workspace: ^type
- and ^dynamic on top of the others. See Remarks for more info.
-
- == CMD_HELP_GWP ==
- Remarks:
-
- This command shows information about the workspace that is located in path.
-
- Output format parameters (--^format option):
- This command accepts a format string to show the output.
- The output parameters of this command are the following:
- {0} | {^wkname} Workspace name.
- {1} | {^wkpath} Workspace path.
- {2} | {^machine} Client machine name.
- {3} | {^owner} Workspace owner.
- {4} | {^guid} Workspace GUID.
- {5} | {^type} Workspace type: partial (gluon) or regular.
- {6} | {^dynamic} A workspace can be dynamic (plasticfs) or static.
-
- {^tab} Inserts a tab space.
- {^newline} Inserts a new line.
-
- Examples:
-
- cm ^gwp c:\myworkspace\code\file1.cpp --^format="Workspace name: {^wkname}"
- cm ^gwp . --^format="Name: {^wkname} | Type: {^type}, {^dynamic}"
-
- == CMD_DESCRIPTION_HELP ==
- Gets help for a Plastic SCM command.
-
- == CMD_USAGE_HELP ==
- Usage:
-
- cm ^help <command>
-
- == CMD_HELP_HELP ==
-
- == CMD_DESCRIPTION_IOSTATS ==
- Shows statistics about the hardware.
-
- == CMD_USAGE_IOSTATS ==
- Usage:
-
- cm ^iostats [<repserverspec>] [<list_of_tests>[ ...]]
- [--^nettotalmb=<value_mb>] [--^networkiterations=<value_iter>]
- [--^diskdatasize=<value_size>] [--^disktestpath=<value_path>]
- [--^systemdisplaytime=<value_time>]
- [--^systemdisplaytimeinterval=<value_interval>]
-
- Options:
-
- repserverspec An available Plastic SCM server to perform
- the network tests, such as "serverUploadTest"
- and/ or "serverDownloadTest".
- If no server is provided, the command tries
- to communicate with the server configured by
- default.
- (Use 'cm ^help ^objectspec' to learn more about
- server specs.)
- list_of_tests Available tests. Use a whitespace to separate
- test fields.
- See Remarks for more info.
- --^nettotalmb Indicates the amount of user data (in
- MegaBytes) transmitted on a network test,
- such as "^serverDownloadTest" or
- "^serverUploadTest".
- It must be a value between "4" and "512".
- (Default: 16)
- --^networkiterations Indicates the number of iterations of
- "^serverDownloadTest" and/or "^serverUploadTest"
- that will be run.
- It must be a value between "1" and "100".
- (Default: 1)
- --^diskdatasize Indicates the amount of data (in MegaBytes)
- that will be written and then read on the
- "^diskTest".
- It must be a value between "100" and "4096".
- (Default: 512)
- --^disktestpath Path where the "^diskTest" writes the test
- files. If this parameter is not provided,
- the command will try to use the system temp
- path.
- --^systemdisplaytime Time interval (in seconds) showing the usage
- of system resources. This option is available
- for the following tests: "^systemNetworkUsage"
- and "^systemDiskUsage".
- It must be a value between "1" and "3600".
- (Default: 5 seconds).
- --^systemdisplaytimeinterval Time interval (in seconds) between the
- system performance samples. This option is
- available for the following tests:
- "^systemNetworkUsage" and "^systemDiskUsage".
- It must be a value between "1" and "60".
- (Default: 1 second).
-
- == CMD_HELP_IOSTATS ==
- Remarks:
-
- This command requires an available server be used during the network
- speed tests ("^serverUploadTest" and/or "^serverDownloadTest").
-
- The '--^diskTestPath' must point to a path that belongs to the physical
- disk drive about to be tested. If no path is specified, the command tries
- to use the system default temp path.
- The disk drive of the specified path must have enough free space to execute
- the test.
-
- During the command execution, the system can experience a degraded
- performance caused by the tests performed.
-
- Available tests:
- --^serveruploadtest (Default) Measures the data upload speed from
- Plastic SCM client to the server.
- --^serverdownloadtest (Default) Measures the data download speed from
- Plastic SCM server to the client.
- --^disktest (Default) Measures the disk read speed and disk
- write speed.
- --^systemnetworkusage Shows the current usage of system network
- resources.
- (It shows Network Interface performance counters
- provided by Microsoft Windows).
- Available in Microsoft Windows only.
- --^systemdiskusage Shows the current usage of system physical
- disks.
- (It shows Network Interface performance counters
- provided by Microsoft Windows).
- Available in Microsoft Windows only.
-
- Examples:
-
- cm ^iostats MYSERVER:8087 --^serveruploadtest --^serverdownloadtest --^nettotalmb=32
-
- == CMD_DESCRIPTION_ISSUETRACKER ==
- Gets, updates, or finds the issue status in the specified issue tracker.
-
- == CMD_USAGE_ISSUETRACKER ==
- Usage:
-
- cm ^issuetracker <name> ^status ^get <task_id> <parameter>[ ...]
- cm ^issuetracker <name> ^status ^update <task_id> <status> <parameter>[ ...]
- cm ^issuetracker <name> ^status ^find <status> <parameter>[ ...]
- cm ^issuetracker <name> ^connection ^check <parameter>[ ...]
-
- name Name of the issue tracker to connect with.
- Only Jira is supported at the moment.
- task_id Number of the issue to query or update.
- ^status A valid status for an issue in the issue tracker.
-
- Jira parameters (all are mandatory):
-
- --^user=<user> The user to authenticate.
- --^password=<password> The password to authenticate.
- --^host=<url> The target url of the issue tracker.
- --^projectkey=<key> The project key of Jira project.
-
- == CMD_HELP_ISSUETRACKER ==
- Examples:
-
- cm ^issuetracker jira ^status ^get 11 --^user=user@mail.es --^password=pwd \
- --^host=https://user.atlassian.net --^projectkey=PRJ
- (Gets the status of the issue 11 for the 'PRJ' project.)
-
- cm ^issuetracker jira ^status ^update 11 "Done" --^user=user@mail.es \
- --^password=pwd --^host=https://user.atlassian.net --^projectkey=PRJ
- (Updates the status to 'Done' of the issue 11 for the 'PRJ' project.)
-
- cm ^issuetracker jira ^status ^find "Done" --^user=user@mail.es --^password=pwd \
- --^host=https://user.atlassian.net --^projectkey=PRJ
- (Gets the task ids whose status is set to 'Done' for the 'PRJ' project.)
-
- cm ^issuetracker jira ^connection ^check --^user=user@mail.es --^password=pwd \
- --^host=https://user.atlassian.net --^projectkey=PRJ
- (Checks whether the configuration parameters are valid or not.)
-
- == CMD_DESCRIPTION_LICENSEINFO ==
- Displays license information and license usage.
-
- == CMD_USAGE_LICENSEINFO ==
- Usage:
-
- cm ^licenseinfo | ^li [--^server=<repserverspec>] [--^inactive] [--^active]
- [--^sort=(^name|^status)]
-
- Options:
-
- --^server Gets the license info from the specified server.
- If no server is specified, executes the command on the
- one configured on the client.
- (Use 'cm ^help ^objectspec' to learn more about repserver
- specs.)
- --^inactive Shows only inactive users in the "license usage" section.
- --^active Shows only active users in the "license usage" section.
- --^sort Sorts users by one of the specified sort options:
- '^name' or '^status'.
-
- == CMD_HELP_LICENSEINFO ==
- Remarks:
-
- The information displayed consists of expiration date, activated and
- deactivated users, etc.
-
- Examples:
-
- cm ^licenseinfo
- cm ^licenseinfo --^server=myserver:8084
- cm ^licenseinfo --^sort=^name
-
- == CMD_DESCRIPTION_LINKTASK ==
- Links a changeset to a task.
-
- == CMD_USAGE_LINKTASK ==
- This is an automation command, meant to be used to automate 'cm' only.
- It is not as user friendly as it should be.
-
- Usage:
-
- cm ^linktask | ^lt <csetspec> <ext_prefix> <task_name>
-
- csetspec The full changeset specification to link to a task.
- (Use 'cm ^help ^objectspec' to learn more about changeset
- specs.)
- ext_prefix The extension prefix of the configured issue tracking
- system to work with.
- task_name The task identifier on the issue tracking system.
-
- == CMD_HELP_LINKTASK ==
- Examples:
-
- cm ^lt ^cs:8@^rep:default@^repserver:localhost:8084 jira PRJ-1
-
- == CMD_DESCRIPTION_LOCK_LIST ==
- Shows locks on a server.
-
- == CMD_USAGE_LOCK_LIST ==
- Usage:
-
- cm ^lock ^list | ^ls [<revspec> [ ...]] [--^server=<server>]
- [--^onlycurrentuser] [--^onlycurrentworkspace]
- [--^ignorecase]
- [--^machinereadable [--^startlineseparator=<sep>]
- [--^endlineseparator=<sep>] [--^fieldseparator=<sep>]]
-
- revspec If one or more are present, this command will display
- one lock line for each specified revision if its
- associated item is locked in the server. Otherwise,
- this command will list all locked items in the default
- server (or the one set with the '--^server' option).
- Use a whitespace to separate the rev specs when using
- more than one.
- (Use 'cm ^help ^objectspec' to learn more about rev specs.)
-
- Options:
-
- --^server Repository server specification.
- This option will override the default server which
- is retrieved from the current workspace or the
- client.conf file.
- (Use 'cm ^help ^objectspec' to learn more about
- server specs.)
- --^onlycurrentuser Filters the results showing only the locks performed
- by the current user.
- --^onlycurrentworkspace Filters the results showing only the locks performed
- on the current workspace (matching them by name).
- --^ignorecase Ignores casing on the paths when a serverpath spec
- is used. With this flag, the command will work for
- "/src/foo.c" even if the user writes "/sRc/fOO.c".
- --^machinereadable Outputs the result in an easy-to-parse format.
- --^startlineseparator Used with the '--^machinereadable' flag, specifies how
- the lines should start.
- --^endlineseparator Used with the '--^machinereadable' flag, specifies how
- the lines should end.
- --^fieldseparator Used with the '--^machinereadable' flag, specifies how
- the fields should be separated.
-
- == CMD_HELP_LOCK_LIST ==
- Remarks:
-
- The command will display a list of the currently locked items in the
- default server. It also accepts a list of revision specifications. In this
- case, only the locks belonging to the selected items will be displayed.
- A '--^server=<server>' can be used to set the default server to query.
-
- The command shows a line for every lock in the specified server:
- - GUID of the locked item.
- - User name who performed the lock.
- - Workspace name where the lock was performed.
- - Path of the locked item (server path format).
-
- Examples:
-
- cm ^lock ^list
- cm ^lock ^list --^server=myserver:8084
- cm ^lock ^ls ^serverpath:/src/foo.c#^cs:99@default@localhost:8084
- cm ^lock ^list ^revid:3521@default ^itemid:2381@secondary --^onlycurrentuser
- cm ^lock ^ls --^onlycurrentuser
- cm ^lock ^ls --^onlycurrentuser --^onlycurrentworkspace
- cm ^lock ^list --^machinereadable --^startlineseparator=">" \
- --^endlineseparator="<" --^fieldseparator=","
-
- == CMD_DESCRIPTION_LISTUSERS ==
- Lists users and groups.
-
- == CMD_USAGE_LISTUSERS ==
- Usage:
-
- cm ^listusers | ^lu <repserverspec> [--^onlyusers] [--^onlygroups]
- [--^filter=<str_filter>]
- cm ^listusers | ^lu <repserverspec> --^group=<group_name>
-
- repserverspec Repository server specification.
- (Use 'cm ^help ^objectspec' to learn more about specs.)
-
- Options:
-
- --^onlyusers Lists only users.
- --^onlygroups Lists only groups.
- --^filter Lists only users and/or groups that matches the
- specified filter.
- --^group Lists only users from a certain group. This option is
- not compatible with ^onlyusers, ^onlygroups, nor ^filter.
-
- == CMD_HELP_LISTUSERS ==
- Examples:
-
- cm ^lu localhost:8084
- (Lists all users in the server.)
-
- cm ^listusers localhost:8084 --^onlyusers --^filter=m
- (Lists only the users in the server that contains "m".)
-
- cm ^listusers codice@cloud --^group=Administrators
- (Lists only the users in the group Administrators in the 'codice@cloud' org.)
-
- == CMD_DESCRIPTION_LOCATION ==
- Returns the path of 'cm'.
-
- == CMD_USAGE_LOCATION ==
- Usage:
-
- cm ^location
-
- == CMD_HELP_LOCATION ==
-
- == CMD_DESCRIPTION_LOCK ==
- This command allows the user to manage locks.
-
- == CMD_USAGE_LOCK ==
- Usage:
-
- cm ^lock <command> [options]
-
- Commands:
-
- ^list | ^ls
- ^unlock
-
- To get more information about each command run:
- cm ^lock <command> --^usage
- cm ^lock <command> --^help
-
- == CMD_HELP_LOCK ==
- Examples:
-
- cm ^lock ^list
- cm ^lock
- (The option '^list' is optional if there are no arguments.)
- cm ^lock ^ls ^serverpath:/src/foo.c#^cs:99@default@localhost:8084
- cm ^lock ^unlock 91961b14-3dfe-4062-8c4c-f33a81d201f5
-
- == CMD_DESCRIPTION_LOG ==
- Gets info about revisions in changesets.
-
- == CMD_USAGE_LOG ==
- Usage:
-
- cm ^log [<csetspec> | <repspec>] [--^from=<csetspec_from>] [--^allbranches]
- [--^ancestors] [--^csformat=<str_format>] [--^itemformat=<str_format>]
- [--^xml[=<output_file>]] [--^encoding=<name>]
- [--^repositorypaths | --^fullpaths | --^fp]
-
- Options:
-
- csetspec Returns all changes made in the specified changeset.
- (Use 'cm ^help ^objectspec' to learn more about changeset
- specs.)
- repspec Returns all changes made in the specified repository.
- (Use 'cm ^help ^objectspec' to learn more about repository
- specs.)
- --^from Lists all the changes made in every changeset from the
- changeset specification [csetspec_from] to the
- changeset specification [csetspec].
- The [csetspec_from] changeset is not included in the
- output.
- Ignored when a repository spec is provided.
- --^allbranches Shows information about the changesets created in a
- specified interval, for all the branches where those
- changesets were created.
- --^ancestors Shows information about the reachable changesets by
- following the parent and merge links for the given
- changeset ([csetspec]). If the from changeset
- ([csetspec_from]) is provided too, it will be used as
- lower limit for all the paths. Remarks: The changeset
- changes will not be shown when this option is used.
- --^csformat Retrieves the changeset info in a specific format. See
- Remarks for more info. This option cannot be combined
- with '--^xml'.
- --^itemformat Retrieves the item info in a specific format. See
- Remarks for more info. This option cannot be combined
- with '--^xml'.
- --^xml Prints the output in XML format to the standard output.
- It is possible to specify an output file. This option
- cannot be combined with '--^csformat' and '--^itemformat'.
- --^encoding Used with the '--^xml' option, specifies the encoding to
- use in the XML output, i.e.: utf-8.
- See the MSDN documentation at
- http://msdn.microsoft.com/en-us/library/system.text.encoding.aspx
- to get the table of supported encodings and its format,
- (at the end of the page, in the "Name" column).
- --^fullpaths, --^fp Force printing full workspace paths for files and
- directories when possible.
- --^repositorypaths Prints repository paths (server paths) instead of
- workspace paths. (This option overrides the
- '--^fullpaths' option).
-
- == CMD_HELP_LOG ==
- Remarks:
-
- - If neither 'csetspec' nor option is specified, the command shows
- information about every changeset created within the last month in every
- branch.
- - If only the option '--^from' is included, the command shows the
- information about every changeset from that specified changeset to the
- last changeset in the branch where the changeset was created.
- - If the option '--^allbranches' appears without an interval, the command
- retrieves the same information as it would do if only 'csetspec' was
- specified.
- - If the '--^from' is used, the output contains information from the
- 'csetspec_from'+1 on.
- - The repository used to show the changeset information is the one loaded
- in the path where the command executes on.
-
- This command accepts a format string for the items ('--^itemformat') and a
- format string for the changesets ('--^csformat').
-
- The output parameters of '--^csformat' are the following:
- {^tab} Inserts a tab space.
- {^newline} Inserts a new line.
- {^changesetid} Changeset number.
- {^branch} Branch where the changeset was created.
- {^date} Date of the changeset.
- {^owner} Owner of the changeset.
- {^comment} Comment of the changeset.
- {^items} Items involved in the changeset.
- {^repository} Repository where the changeset exists.
- {^repserver} Server name.
-
- The output parameters of '--^itemformat' are the following:
- {^tab} Inserts a tab space.
- {^newline} Inserts a new line.
- {^path} Item path.
- {^branch} Branch where the changeset was created.
- {^date} Date of the changeset.
- {^owner} Owner of the changeset.
- {^shortstatus} Prints the short format for the status. See below.
- {^fullstatus} Prints the long format for the status. See below.
-
- Short format and its corresponding long format:
- '^A' ^Added
- '^D' ^Deleted
- '^M' ^Moved
- '^C' ^Changed
-
- These are valid output strings:
- --^csformat="{^newline}Changeset {^changesetid} created on {^date};{^tab} changed items: {^items}."
- --^itemformat="{^newline}The item {^path} was changed in the branch {^branch}."
-
- Examples:
-
- cm ^log
- (Shows information about every changeset created in the last month in every
- branch.)
-
- cm ^log ^cs:16
- (Shows information about the changes done in the changeset 16 in the branch
- where the changeset was created.)
-
- cm ^log ^cs:16 --^csformat="{^newline}Changeset {^changesetid} created on \
- {^date};{^tab} changed items: {^items}."
- (Shows the information in the specified format.)
-
- cm ^log --^from=^cs:20 ^cs:50
- (Shows the information about every revision contained in every changeset
- from the changeset 21 to the changeset 50.)
-
- cm ^log --^from=^cs:20 ^cs:50 --^allbranches
- (Shows the information about every revision contained in every changeset
- from the changeset 21 to the changeset 50 in every branch of the
- repository.)
-
- cm ^log ^rep:myrep@localhost:8084
- (Shows information about the changes done in the specified repository.
- No workspace is required to run the command.)
-
- cm ^log --^from=^cs:20@^rep:mainRep@localhost:8084
- (Shows the information about every revision contained in every changeset
- from the changeset 21. No workspace is required to run the command, because
- the full changeset spec was specified.)
-
- == CMD_DESCRIPTION_LS ==
- Lists the contents of a tree.
-
- == CMD_USAGE_LS ==
- Usage:
-
- cm ^ls | ^dir [<paths>[ ...]] [--^format=<str_format>] [--^symlink]
- [--^selector[=<selector_format>]] [--^tree=<obj_spec>]
- [-^R | -^r | --^recursive]
- [--^xml[=<output_file>]] [--^encoding=<name>]
-
- Options:
-
- paths List of paths to show. Use a whitespace to separate
- paths.
- Use double quotes (" ") to specify paths containing
- spaces.
- --^format Retrieves the output message in a specific format. See
- Remarks for more info. This option cannot be combined
- with '--^xml'.
- --^symlink Applies the operation to the symlink and not to the
- target.
- --^selector Gets the content from the active workspace selector.
- If selector_format is specified, then lists the
- specified selector.
- This is mostly deprecated since selectors are
- no longer a central part of Plastic SCM since 4.x.
- --^tree Lists the tree in the specified changeset or branch.
- (Use 'cm ^help ^objectspec' to learn more about specs.)
- -^R Lists recursively.
- --^xml Prints the output in XML format to the standard output.
- It is possible to specify an output file. This option
- cannot be combined with '--^format'.
- --^encoding Used with the '--^xml' option, specifies the encoding to
- use in the XML output, i.e.: utf-8.
- See the MSDN documentation at
- http://msdn.microsoft.com/en-us/library/system.text.encoding.aspx
- to get the table of supported encodings and its format,
- (at the end of the page, in the "Name" column).
-
- == CMD_HELP_LS ==
- Remarks:
-
- - Path can be typed with meta-characters.
- - The list depends on the workspace selector.
- - The output of the command can be formatted specifying a format string.
- - If '--^tree' or '--^selector' options are specified, the given
- path must be a server path (a.k.a.: 'cm path'): /dir/file.txt, not a
- workspace path: C:\Users\myuser\mywk\dir\file.txt
- - If no path is provided, the workspace path assumed is the current
- directory. If '--^tree' or '--^selector' options are used, then
- the root path ("/") is assumed.
-
- The default format string is:
- "{^size,10} {^date:dd/MM/yyyy} {^date:HH:mm}\
- {^type,-6} {^location,-12} {^checkout,-5} {^name}\
- {^symlinktarget}"
-
- Output format parameters (--^format option):
- This command accepts a format string to show the output.
- The output parameters of this command are the following:
- {^size}
- {^formattedsize}
- {^date}
- {^type}
- ^dir directory,
- ^txt text file,
- ^File file.
- {^location} Example: ^br:branch#cset
- {^checkout}
- {^name}
- {^changeset}
- {^path}
- {^repspec}
- {^owner}
- {^revid}
- {^parentrevid}
- {^itemid}
- {^brid}
- {^repid}
- {^server}
- {^symlinktarget}
- {^hash}
- {^chmod}
- {^wkpath} Path relative to workspace root
- {^branch}
- {^newlocation} cset@branch
- {^guid} (Will take longer to resolve)
- {^itemguid}
- {^transformed} Show applied rule for transformed items. Check the
- Administrator Guide to learn about Transformable workspaces:
- https://www.plasticscm.com/download/help/adminguide
-
- You can customize the '^ls' format setting the PLASTIC_LS_FORMAT environment
- variable.
-
- Examples:
-
- cm ^ls
- cm ^ls c:\workspace\src
-
- cm ^ls --^format={^name}
- (Only file names.)
-
- cm ^ls --^symlink
- (Displays information about the symlink instead of the target file or
- directory.)
-
- cm ^ls code --^selector
- (Shows the content of the 'code' subdirectory from the current workspace
- selector.)
-
- cm ^ls /code --^selector="^rep 'myrep' ^path '/' ^branch '/^main'"
- (Shows the content of the '/code' subdirectory on the specified selector.
- Note that the path is specified in server format.)
-
- cm ^ls /code --^tree=44@myrep@denver:7070
- (Lists the '/code' subdirectory at changeset 44 at repo 'myrep' at server
- 'denver:7070'.)
-
- cm ^ls /code --^tree=^br:/main/scm13596@myrep@denver:7070
- (Lists the '/code' subdirectory at the latest changeset in branch
- '/main/scm13596' at repo 'myrep' at server 'denver:7070'.)
-
- cm ^ls /code --^tree=ae1390ed-7ce9-4ec3-a155-e5a61de0dc77@myrep@denver:7070
- (Lists the '/code' subdirectory at changeset
- ae1390ed-7ce9-4ec3-a155-e5a61de0dc77 at repo 'myrep' at server
- 'denver:7070'.)
-
- == CMD_DESCRIPTION_TRIGGER_LIST ==
- Lists the triggers of a given type on a server.
-
- == CMD_USAGE_TRIGGER_LIST ==
- Usage:
-
- cm ^trigger | ^tr ^list | ^ls [<subtype-type>] [--^server=<repserverspec>]
- [--^format=<str_format>]
-
- Options:
-
- subtype-type Trigger execution and trigger operation.
- (Use 'cm ^showtriggertypes' to see a list of trigger
- types.)
- --^server Lists the triggers on the specified server.
- If no server is specified, executes the command on the
- one configured on the client.
- (Use 'cm ^help ^objectspec' to learn more about server
- specs.)
- --^format Retrieves the output message in a specific format. See
- Remarks for more info.
-
- == CMD_HELP_TRIGGER_LIST ==
- Remarks:
-
- If the type is not specified, lists all the triggers on the server.
-
- Output format parameters (--^format option):
- This command accepts a format string to show the output.
- The output parameters of this command are the following:
- {0} Trigger position.
- {1} Trigger name.
- {2} Trigger path.
- {3} Trigger owner.
- {4} Trigger type.
- {5} Trigger filter.
-
- Examples:
- cm ^trigger list after-mklabel
- (Lists all triggers of type 'after-mklabel' on the server configured on the
- client.)
-
- cm ^tr ^ls ^before-mkbranch --^server=myserver:8084
- (Lists all triggers of type 'before-mkbranch' on server 'myserver:8084'.)
-
- == CMD_DESCRIPTION_MANIPULATESELECTOR ==
- Changes the selector to a date.
-
- == CMD_USAGE_MANIPULATESELECTOR ==
- This is an automation command, meant to be used to automate 'cm' only.
- It is not as user friendly as it should be.
-
- Usage:
-
- cm ^manipulateselector | ^ms [<wk_path> | <wk_spec>] --^atdate=<sel_date>
-
- wk_path Path of the workspace.
- wk_spec Workspace specification. (Use 'cm ^help ^objectspec' to
- learn more about specs.)
- Options:
-
- --^atdate Returns a selector that will recreate the workspace as
- it would have looked at the specified date.
-
- == CMD_HELP_MANIPULATESELECTOR ==
- Remarks:
-
- If neither path nor workspace spec is specified, the command will take the
- current directory as workspace path.
-
- Examples:
-
- cm ^manipulateselector c:\workspace --^atdate=yyyy-MM-ddTHH:mm:ss
- cm ^manipulateselector --^atdate=yyyy-MM-ddTHH:mm:ss
- cm ^manipulateselector > mySelector.txt --^atdate=yyyy-MM-ddTHH:mm:ss
- cm ^manipulateselector ^wk:build_wk@BUILDER --^atdate=yyyy-MM-ddTHH:mm:ss
-
- == CMD_DESCRIPTION_MERGE ==
- Merges a branch with another branch.
-
- == CMD_USAGE_MERGE ==
- Usage:
-
- cm ^merge <source_spec> [--^merge] [--^cherrypicking] [--^forced]
- [--^mergetype=(^onlyone|^onlysrc|^onlydst|^try|^forced)]
- [--^interval-origin=<csetspec> | --^ancestor=<csetspec>]
- [--^keepsource | --^ks] [--^keepdestination | --^kd]
- [--^automaticresolution=<conflict-types>[;...]]
- [--^subtractive] [--^mount] [--^printcontributors]
- [--^noprintoperations] [--^silent]
- [(--^to=<brspec> | --^destination=<brspec>)[--^shelve]]
- [--^no-dst-changes]
- [-^c=<str_comment> | --^commentsfile=<comments_file>]
- [--^resolveconflict --^conflict=<index>
- --^resolutionoption=(^src|^dst|(^rename --^resolutioninfo=<strname>))
- --^mergeresultfile=<path> --^solvedconflictsfile=<path>]
- [--^nointeractiveresolution]
- [--^machinereadable [--^startlineseparator=<sep>]
- [--^endlineseparator=<sep>] [--^fieldseparator=<sep>]]
-
- source_spec Specification of the source object to merge from:
- - a branch specification: '[^br:/]br_name'
- - a label specification: '^lb:lb_name'
- - a changeset specification: '^cs:cs_number'
- - a shelve specification: '^sh:shelve_number'
- (Use 'cm ^help ^objectspec' to learn more about specs.)
-
- Options:
-
- --^merge Performs the merge. Otherwise, prints the
- conflicts found.
- --^cherrypicking Merges the changes included on the source
- changesets. This option is not used if the merge
- source specification is a label.
- --^forced Does not check if the source and destination are
- already connected.
- This option is only available for interval merge
- and cherry picking.
- --^mergetype Type of the merge. See Remarks for more info.
- --^interval-origin Specifies which changeset is chosen as the
- interval origin, so the merge will only take the
- differences between the source changeset and the
- specified interval origin.
- --^ancestor This is an alias of '--^interval-origin'.
- --^keepsource Accepts all changes from source contributor for
- items with conflicts.
- --^keepdestination Preserves changes from destination contributor
- for items with conflicts.
- --^automaticresolution Used to resolve directory conflicts. This option
- lets you choose whether the source or the
- destination contributor should be automatically
- selected to resolve the conflict.
- Use a semicolon to separate conflict types.
- See Remarks for more info.
- --^subtractive Deletes changes introduced by a merge. The
- parameter passed to the command (source_spec) is
- used to specify which is the source to delete
- changes. It must be a changeset. In the case of a
- changeset interval, the '--^interval-origin' must
- be used to define the interval origin. To remove
- a change, the system creates a new checked out
- revision which will have the content of the
- previous one except for the deleted changes.
- --^mount The mount point for the given repository.
- --^printcontributors Prints the contributors (base, source, and
- destination).
- --^noprintoperations Silently resolves merges without showing
- information about the resolution.
- --^silent Does not show any output.
- --^to | --^destination Performs a merge-to operation to the specified
- branch (by entering a branch spec or brspec)
- with full conflict resolution.
- (Use 'cm ^help ^objectspec' to learn more about
- branch specs.)
- A "merge-to" (or workspace-less merge) is a merge
- done in the server side. While normal merges
- happen on a workspace merging "from" a branch,
- label or changeset, a merge-to happens entirely
- on the server. While in normal merges the
- "destination" is the workspace, in "merge-to" a
- destination must be always specified (that's why
- we call it "to").
- Check the following link for more information
- about the "merge to" feature:
- https://www.plasticscm.com/download/help/mergeto
- --^shelve Creates a shelve with the changes of the merge
- result (plus merge traceability info) instead of
- creating a new changeset. This option is not
- available when the merge source is a shelve. This
- option is only available for server-side-merge
- (a.k.a. "merge-to"). Hence, the '--^to' and
- '--^merge' options are required.
- --^no-dst-changes Ensures that the destination contributor doesn't
- have changes (the destination changeset is also
- the common ancestor). When there are changes on
- the destination, the merge is not allowed.
- -^c Applies the specified comment to the changeset
- created in the merge operation.
- --^commentsfile Applies the comment in the specified file to the
- changeset created in the merge operation.
- --^resolveconflict (Mainly used by plugins. See Remarks for more info.)
- Used to solve a directory conflict.
- --^conflict Used with the '--^resolveconflict' flag, specifies
- the index of the conflict to solve starting at 1.
- --^resolutionoption Used with the '--^resolveconflict' flag, indicates
- the type of the conflict resolution. Use one of
- the following options: '^src', '^dst', '^rename'.
- See Remarks for more info.
- --^resolutioninfo Used with the '--^resolveconflict' flag, provides
- the name to use when the '--^resolutionoption'
- option is 'rename'.
- --^mergeresultfile Used with the '--^resolveconflict' flag, outputs
- into a file the information of the merge result
- between different calls .The specified path will
- be created during the first call and updated on
- each next call.
- --^solvedconflictsfile Used with the '--^resolveconflict' flag, outputs
- into a file the information of the conflicts
- solved between different calls. The specified
- path will be created during the first call and
- updated on each next call.
- --^nointeractiveresolution (Mainly used by plugins. See Remarks for more info.)
- Avoids prompting the user for manual conflict.
- This way, a directory conflict won't be solved.
- --^machinereadable (Mainly used by plugins. See Remarks for more info.)
- Outputs the result in an easy-to-parse format.
- --^startlineseparator Used with the '--^machinereadable' flag, specifies
- how the lines should start. (Default: empty string.)
- --^endlineseparator Used with the '--^machinereadable' flag, specifies
- how the lines should end. (Default: empty string.)
- --^fieldseparator Used with the '--^machinereadable' flag, specifies
- how the fields should be separated. (Default:
- whitespace.)
-
- == CMD_HELP_MERGE ==
- Remarks:
-
- This command is used to merge changes between two branches or between a
- label and a branch. The destination of the merge must be always a branch.
- The merge source is specified as an argument.
- Destination is the current content of the workspace.
- For example, to display the elements that will be merged from branch
- task001 to the main branch, the selector must point to the main branch,
- the workspace must be updated, and then:
- cm ^merge ^br:/task001
-
- To really perform the merge, '--^merge' option is added:
- cm ^merge ^br:/task001 --^merge
-
- To define the merge source, the following specs can be used:
-
- - A branch specification (brspec):
- [^br:/]br_name
- Example: ^br:/main/task001
- (Merges from the last changeset on this branch.)
-
- - A label specification (lbspec):
- ^lb:lb_name
- Example: ^lb:BL001
- (Merges from the labeled changeset.)
-
- - A changeset specification (csetspec):
- ^cs:cs_number
- Example: ^cs:25
- (Merges from the given changeset content.)
-
- - A shelve specification (shspec):
- ^sh:shelve_number
- Example: ^sh:2
- (Merges from the given shelve content.)
-
- To automatically resolve directory conflicts, use '--^automaticresolution'
- option and specify the type of conflict followed by the contributor
- (source or destination) that must be selected during the merge operation.
- (Separate each "type of conflict"-"contributor" pair by a semicolon (;).)
- For example:
- cm ^merge ^cs:2634 --^merge --^automaticresolution=^eviltwin-src;^changedelete-src
- (The merge operation from changeset 2634 resolves the "^eviltwin" and
- "^changedelete" conflicts by keeping the source ("-^src") contributor in
- both cases.)
- - A "-^src" suffix after a conflict type tells the merge command to keep the
- source contributor changes.
- - A "-^dst" suffix will keep the destination contributor changes.
- This is the list of conflict types the merge command supports:
- "^movedeviltwin", "^eviltwin", "^changedelete", "^deletechange", "^movedelete",
- "^deletemove", "^loadedtwice", "^addmove", "^moveadd", "^divergentmove",
- "^cyclemove", "^all".
- The "^all" value overrides the other options. In the following example,
- "^eviltwin-dst" will be ignored:
- cm ^merge ^br:/main/task062 --^merge --^automaticresolution=^all-src;^eviltwin-dst
- Check the following link to learn more about merge conflicts:
- https://www.plasticscm.com/download/help/directorymerges
-
- These are the options for '--^mergetype':
- ^onlyone Automatic merge if only one contributor modified the
- item.
- ^onlysrc Automatic merge if only source contributor modified the
- item.
- ^onlydst Automatic merge if only destination contributor modified
- the item.
- ^try Automatic merge if only one contributor has modified the
- conflictive piece of code (each conflict).
- ^forced Always try to solve all non-automatic conflicts.
-
- These are the options that are mainly used by plugins and integrations:
- - '--^resolveconflict' to solve a directory conflict. You also have to
- use the following options:
- - '--^conflict' is the index of the conflict that you want to
- solve, starting at 1.
- - '--^resolutionoption' indicates the conflict resolution to
- use. This can be:
- - '^src' to keep the source change and discard the
- destination change
- - '^dst' to keep the destination change and discard the
- source change
- - '^rename' (only if the conflict type supports this
- resolution), to rename the destination to the given name
- provided with the '--^resolutioninfo' option.
- - '--^resolutioninfo' to provide the name to use on a
- '^rename' resolution
- - '--^mergeresultfile' and '--^solvedconflictsfile', both used to
- store the merge info between different calls.
- - '--^nointeractiveresolution' indicates the merge to not ask the user for
- manual conflict resolution.
- - '--^machinereadable' and '--^startlineseparator', '--^endlineseparator',
- '--^fieldseparator' options to print the output on a machine-readable
- way (easier-to-parse).
- Example:
- cm ^merge --^machinereadable --^startlineseparator=start@_@line \
- --^endlineseparator=new@_@line --^fieldseparator=def#_#sep \
- --^mergeresultfile=C:\Users\Borja\AppData\Local\Temp\2tmp4D6C.tmp \
- --^solvedconflictsfile=C:\Users\Borja\AppData\Local\Temp\2tmp4D6D.tmp \
- --^resolveconflict --^conflict=1 --^resolutionoption=rename \
- --^resolutioninfo=bin_dst ^br:/main/task --^merge
-
- Set the PLASTICEDITOR environment variable to specify an editor for
- entering comments. If the PLASTICEDITOR environment variable is set, and
- the comment is empty, the editor will be automatically launched to allow
- you to specify the comment.
-
- Examples:
-
- cm ^merge ^br:/task001
- (Does not merge, just prints items to be merged.)
-
- cm ^merge ^br:/task001 --^merge
- (Does merge from branch 'task001'.)
-
- cm ^merge ^cs:5 --^merge --^cherrypicking --^interval-origin=^cs:2
- (Cherry pick from the changeset interval (2,5].)
-
- cm ^merge ^cs:8 --^merge --^subtractive --^keepdestination
- (Subtractive merge from changeset 8, keeping destination changes for those
- elements with conflicts.)
-
- cm ^merge ^br:/main/task001 --^to=^br:/main --^merge -^c="Integrated new UI"
- (Does server-side merge, a.k.a. merge-to, from branch 'task001' to branch
- 'main' and sets a comment.)
-
- cm ^merge ^br:/main/task001 --^to=^br:/main --^merge --^shelve
- (Does server-side merge from branch 'task001' to branch 'main' and leaves
- the result on a shelve.)
-
- cm ^merge ^sh:2 --^to=^br:/main --^merge --^no-dst-changes
- (Applies the shelve 2 into 'main' only if it was created from the current
- 'main' head')
-
- == CMD_DESCRIPTION_ATTRIBUTE_CREATE ==
- Creates a new attribute.
-
- == CMD_USAGE_ATTRIBUTE_CREATE ==
- Usage:
-
- cm ^attribute | ^att ^create | ^mk <att_name>
-
- att_name Attribute name
-
- == CMD_HELP_ATTRIBUTE_CREATE ==
- Remarks:
-
- Set the PLASTICEDITOR environment variable to specify an editor for
- entering comments. If the PLASTICEDITOR environment variable is set, and
- the comment is empty, the editor will be automatically launched to allow
- you to specify the comment.
-
- Examples:
-
- cm ^attribute ^create status
- (Creates the attribute 'status'.)
-
- cm ^att ^mk integrated
- (Creates the attribute 'integrated'.)
-
- == CMD_DESCRIPTION_BRANCH ==
- Allows the user to manage branches.
-
- == CMD_USAGE_BRANCH ==
- Usage:
-
- cm ^branch | ^br <command> [options]
-
- Commands:
-
- ^create | ^mk
- ^delete | ^rm
- ^rename
- ^history
- ^showmain
- ^showmerges
-
- To get more information about each command run:
- cm ^branch <command> --^usage
- cm ^branch <command> --^help
-
- == CMD_HELP_BRANCH ==
- Examples:
-
- cm ^branch /main/scm21345
- cm ^branch ^create /main/scm21345
- cm ^branch ^delete /main/scm21345
- cm ^branch ^rename /main/scm21345 scm21346
- cm ^branch ^history /main/scm21345
- cm ^branch ^showmain
- cm ^branch ^showmerges file.txt
-
- == CMD_DESCRIPTION_BRANCH_CREATE ==
- Creates a new branch.
-
- == CMD_USAGE_BRANCH_CREATE ==
- Usage:
-
- cm ^branch | ^br [^create | ^mk] <brspec>
- [--^changeset=<csetspec> | --^label=<lbspec>]
- [-^c=<str_comment> | -^commentsfile=<comments_file>]
-
- brspec The new branch name or spec.
- (Use 'cm ^help ^objectspec' to learn more about branch specs.)
-
- Options:
-
- --^changeset Changeset used as starting point for the new branch.
- (Use 'cm ^help ^objectspec' to learn more about cset specs.)
- --^label Label used as starting point for the new branch.
- (Use 'cm ^help ^objectspec' to learn more about label specs.)
- -^c Fills in the comment field of the new branch with the
- specified text.
- -^commentsfile Fills in the comment field of the new branch with the
- contents of the specified file.
-
- == CMD_HELP_BRANCH_CREATE ==
- Remarks:
-
- To create a top-level branch, specify the name without any hierarchy.
- For example:
-
- cm ^br /dev
-
- If no optional parameter '--^changeset' is specified, the base of the new
- branch will be the last changeset on the parent branch. If the new branch
- is a top-level branch, the base changeset used will be cset 0.
-
- You can specify a comment using either the '-^c' or the '-^m' switches:
-
- cm ^branch /main/task001 -^c="This is the comment"
- cm ^branch /main/task001 -^m "This is the comment"
-
- Set the PLASTICEDITOR environment variable to specify an editor for
- entering comments. If the PLASTICEDITOR environment variable is set, and
- the comment is empty, the editor will be automatically launched to allow
- you to specify the comment.
-
- Examples:
-
- cm ^branch task001
- cm ^branch ^create task001
- cm ^branch ^mk task001
- cm ^br ^mk task001
- (All of the examples above, create a top-level 'task001' branch in the
- repository of the current workspace.)
-
- cm ^branch ^br:/task001/task002@
- (Creates 'task002' branch as child of 'task001'.)
-
- cm ^br /main/task001@myrep@myserver:8084 -^c="my comment"
- (Creates 'task001' branch as child of 'main' in repository
- 'myrep@myserver:8084' with comment 'my comment'.)
-
- cm ^branch ^br:/main/task001 --^changeset=2837 -^commentsfile=commenttask001.txt
- (Creates the 'task001' branch as child of 'main' with base 'changeset=2837',
- and applies the comment in 'commenttask001.txt' file.)
-
- == CMD_DESCRIPTION_BRANCH_DELETE ==
- Deletes one or more branches.
-
- == CMD_USAGE_BRANCH_DELETE ==
- Usage:
-
- cm ^branch | ^br ^delete | ^rm <brspec>[ ...]
-
- brspec Branch to delete. Use a whitespace to separate branches.
- (Use 'cm ^help ^objectspec' to learn more about branch
- specs.)
-
- == CMD_HELP_BRANCH_DELETE ==
- Remarks:
-
- This command deletes one or more branches.
-
- Examples:
-
- cm ^branch ^delete /main/task001
- (Deletes the branch with name 'task001' that is a child of 'main' in the
- repository of the current workspace.)
-
- cm ^br ^rm main/task002 /main/task012@reptest@myserver:8084
- (Deletes branches '/main/task002' in the repository of the current workspace
- and '/main/task012' in the repository 'reptest@myserver:8084'.)
-
- == CMD_DESCRIPTION_BRANCH_RENAME ==
- Renames a branch.
-
- == CMD_USAGE_BRANCH_RENAME ==
- Usage:
-
- cm ^branch | ^br ^rename <brspec> <new_name>
-
- brspec Branch to rename.
- (Use 'cm ^help ^objectspec' to learn more about branch specs.)
- new_name New name for the branch.
-
- == CMD_HELP_BRANCH_RENAME ==
- Remarks:
-
- This command renames a branch.
-
- Examples:
-
- cm ^branch ^rename /main/task0 task1
- (Renames branch '/main/task0' to '/main/task1'.)
-
- cm ^br ^rename ^br:/main@reptest@server2:8084 secondary
- (Renames the 'main' branch of repository 'reptest' to 'secondary'.)
-
- == CMD_DESCRIPTION_BRANCH_HISTORY ==
- Shows the history of a branch.
-
- == CMD_USAGE_BRANCH_HISTORY ==
- Usage:
-
- cm ^branch | ^br ^history <brspec> [--^dateformat=<date_format>]
- [--^machinereadable]
-
- brspec The branch specification to obtain the history.
- (Use 'cm ^help ^objectspec' to learn more about branch specs.)
-
- Options:
-
- --^dateformat Format used to output dates.
- --^machinereadable Outputs the result in an easy-to-parse format.
-
- == CMD_HELP_BRANCH_HISTORY ==
- Examples:
-
- cm ^branch ^history ^br:/main/scm001@myrepository@myserver:8084
- (Displays the history of '/main/scm001' branch of 'myrepository' repository
- on 'myserver' server.)
-
- cm ^br ^history main --^dateformat="yyyy, dd MMMM" --^machinereadable
- (Displays the history of the 'main' branch of the current repository,
- with a given date format, and in an easy-to-parse format.)
-
- == CMD_DESCRIPTION_BRANCH_SHOWMAIN ==
- Shows the main branch of a repository.
- This is an automation command, meant to be used to automate 'cm' only.
- Most likely, the main branch of your repository is '/main'.
-
- == CMD_USAGE_BRANCH_SHOWMAIN ==
- Usage:
-
- cm ^branch | ^br ^showmain [<repspec>] [--^encoding=<name>]
- [--^format=<format_str>] [--^dateformat=<date_format>]
-
- repspec The repository specification where to show the main
- branch. If no repspec is specified, the command will show
- the main branch for the repository of the current
- workspace.
- (Use 'cm ^help ^objectspec' to learn more about rep specs.)
-
- Options:
-
- --^encoding Specifies the encoding to use in the output,
- i.e.: utf-8.
- See the MSDN documentation at
- http://msdn.microsoft.com/en-us/library/system.text.encoding.aspx
- to get the table of supported encodings and its format,
- (at the end of the page, in the "Name" column).
- --^format Retrieves the output message in a specific format. See
- Remarks for more info.
- --^dateformat Format used to output dates.
-
- == CMD_HELP_BRANCH_SHOWMAIN ==
- Remarks:
-
- This command shows the main branch of a repository.
-
- Output format parameters (--^format option):
- This command accepts a format string to show the output.
- The output parameters of this command are the following:
- {^id} Branch id.
- {^comment} Comment.
- {^date} Date.
- {^name} Name.
- {^owner} Owner.
- {^parent} Parent branch name.
- {^repository} Repository.
- {^repname} Repository name.
- {^repserver} Server.
- {^changeset} Head changeset of the branch.
-
- Examples:
-
- cm ^branch ^showmain
- (Displays the main branch for the repository of the current workspace.)
-
- cm ^branch ^showmain repo@server:8084
- (Displays the main branch for the repository 'repo' in server
- 'server:8084'.)
-
- cm ^br ^showmain --^dateformat="yyyy, dd MMMM" --^encoding=utf-8
- (Displays the main branch of the repository with a given date format,
- and the output is in utf-8.)
-
- cm ^br ^showmain --^format="{^id} - {^name}"
- (Displays the main branch of the repository, printing only its id and name.)
-
- == CMD_DESCRIPTION_BRANCH_SHOWMERGES ==
- Shows branches pending to be merged.
-
- == CMD_USAGE_BRANCH_SHOWMERGES ==
- This is an automation command, meant to be used to automate 'cm' only.
- It is not as user friendly as it should be.
-
- Usage:
-
- cm ^branch | ^br ^showmerges <item_path>[ ...]
- [--^format=<format_str>]
- [--^dateformat=<date_format>]
-
- Options:
- --^format Retrieves the output message in a specific format. See
- Remarks for more info.
- --^dateformat Format used to output dates.
-
- == CMD_HELP_BRANCH_SHOWMERGES ==
- Remarks:
-
- Output format parameters (--^format option):
- This command accepts a format string to show the output.
- The output parameters of this command are the following:
- {^id} Branch id.
- {^comment} Comment.
- {^date} Date.
- {^name} Name.
- {^owner} Owner.
- {^parent} Parent branch name.
- {^parentid} Parent branch id.
- {^repid} Repository id.
- {^repository} Repository.
- {^repname} Repository name.
- {^repserver} Repository server.
-
- Examples:
-
- cm ^branch ^showmerges file.txt
- (Displays branches involved in the pending merge of 'file.txt'.)
-
- cm ^branch ^showmerges file.txt --^format="{^date} {^name}" --^dateformat="ddMMyy"
- (Displays branches involved in the merge, printing only the date and the
- name, with a given date format.)
-
- == CMD_DESCRIPTION_REPOSITORY ==
- Allows the user to manage repositories.
-
- == CMD_USAGE_REPOSITORY ==
- Usage:
-
- cm ^repository | ^repo <command> [options]
-
- Commands:
-
- ^create | ^mk
- ^delete | ^rm
- ^list | ^ls
- ^rename
- ^add
-
- To get more information about each command run:
- cm ^repository <command> --^usage
- cm ^repository <command> --^help
-
- == CMD_HELP_REPOSITORY ==
- Examples:
-
- cm ^repository
- cm ^repository ^list
- cm ^repository newrepo
- cm ^repository ^create newrepo
- cm ^repository ^rename oldname newname
- cm ^repository ^add C:\repo\
-
- == CMD_DESCRIPTION_REPOSITORY_CREATE ==
- Creates a repository on a server.
-
- == CMD_USAGE_REPOSITORY_CREATE ==
- Usage:
-
- cm ^repository | ^repo <rep_name>
- cm ^repository | ^repo <repserverspec> <rep_name>[ ...]
- cm ^repository | ^repo [^create | ^mk] <rep_name>
-
- repserverspec Repository server specification.
- (Use 'cm ^help ^objectspec' to learn more about rep server
- specs.)
- rep_name Name or names of the new repository or repositories.
- Use a whitespace to separate repository names.
-
- == CMD_HELP_REPOSITORY_CREATE ==
- Examples:
-
- cm ^repository MyRep
- cm ^repo 192.168.1.140:8087 Rep01 Rep01/ModuleA Rep01/ModuleB
- cm ^repo ^create Rep01
- cm ^repo ^mk list
-
- == CMD_DESCRIPTION_REPOSITORY_DELETE ==
- Deletes a repository from a server.
-
- == CMD_USAGE_REPOSITORY_DELETE ==
- Usage:
-
- cm ^repository | ^repo ^delete | ^rm <repspec>
-
- Options:
-
- repspec Repository specification.
- (Use 'cm ^help ^objectspec' to learn more about rep specs.)
-
- == CMD_HELP_REPOSITORY_DELETE ==
- Remarks:
-
- Deletes a repository from the repository server.
- The data is not removed from the database backend, but unplugged
- so that it will not be accessible anymore.
- (Data can be reconnected afterwards, see 'cm ^repository ^add'.)
-
- Examples:
-
- cm ^repository ^delete myrepository@^repserver:myserver:8084
- cm ^repository ^rm myrepository@myserver:8084
- cm ^repo ^rm myrepository
-
- == CMD_DESCRIPTION_REPOSITORY_LIST ==
- Lists the repositories on a server.
-
- == CMD_USAGE_REPOSITORY_LIST ==
- Usage:
-
- cm ^repository | ^repo [^list | ^ls] [<repserverspec>] [--^format=<str_format>]
-
- Options:
-
- repserverspec Repository server specification.
- (Use 'cm ^help ^objectspec' to learn more about rep server
- specs.)
- --^format Retrieves the output message in a specific format. See
- Remarks for more info.
-
- == CMD_HELP_REPOSITORY_LIST ==
- Remarks:
-
- Output format parameters (--^format option):
- This command accepts a format string to show the output.
- The output parameters of this command are the following:
- {^repid} | {0} Repository identifier.
- {^repname} | {1} Repository name.
- {^repserver} | {2} Server name.
- {^repowner} | {3} Repository owner.
- {^repguid} | {4} Unique identifier of the repository.
- {^tab} Inserts a tab space.
- {^newline} Inserts a new line.
-
- If the format parameter value is '^TABLE', the output will be printed
- using a table format with the {^repid}, {^repname} and {^repserver} fields.
-
- Examples:
-
- cm ^repository
- (Lists all repositories.)
-
- cm ^repository ^list localhost:8084 --^format="{1, -20} {3}"
- (Writes the repository name in 20 spaces, aligned to left, then a blank,
- and then the repository owner.)
-
- cm ^repository ^ls localhost:8084 --^format="{^repname, -20} {^repowner}"
- (Writes the same as the previous example.)
-
- cm ^repo ^ls localhost:8084 --^format=^TABLE
- (Writes the list of repositories using a table format with the following
- fields: repository id, repository name, and repository server name.)
-
- == CMD_DESCRIPTION_REPOSITORY_RENAME ==
- Renames a repository.
-
- == CMD_USAGE_REPOSITORY_RENAME ==
- Usage:
-
- cm ^repository | ^repo ^rename [<repspec>] <new_name>
-
- repspec Repository to be renamed.
- (Use 'cm ^help ^objectspec' to learn more about repository
- specifications.)
- new_name New name for the repository.
-
- == CMD_HELP_REPOSITORY_RENAME ==
- Remarks:
-
- This command renames a repository.
- If no repspec is specified, current repository will be assumed.
-
- Examples:
-
- cm ^repository ^rename development
- (The current repository will be renamed to 'development'.)
-
- cm ^repo ^rename ^rep:default@SERVER:8084 development
- (The 'default' repository on 'SERVER' will be renamed to 'development'.)
-
- == CMD_DESCRIPTION_REPOSITORY_ADD ==
- Connects an existing repository by adding its database.
-
- == CMD_USAGE_REPOSITORY_ADD ==
- Usage:
-
- cm ^repository | ^repo ^add <db_file> <rep_name> <repserverspec>
-
- db_file The name of the database file on the database backend.
- rep_name The name of the repository.
- repserverspec The repository server specification.
- (Use 'cm ^help ^objectspec' to learn more about repository
- server specifications.)
-
- == CMD_HELP_REPOSITORY_ADD ==
- Remarks:
-
- Reconnects an existing repository database to the server. This command is
- useful to move a repository from one server to another, or to restore an
- archived repository after using the 'cm ^repository ^delete' command.
-
- Examples:
-
- cm ^repository ^add rep_27 myrepository myserver:8084
-
- == CMD_DESCRIPTION_TRIGGER_CREATE ==
- Creates a new trigger on a server.
-
- == CMD_USAGE_TRIGGER_CREATE ==
- Usage:
-
- cm ^trigger | ^tr ^create | ^mk <subtype-type> <new_name> <script_path>
- [--^position=<new_position>]
- [--^filter=<str_filter>]
- [--^server=<repserverspec>]
-
- subtype-type Trigger execution and trigger operation.
- (Use 'cm ^showtriggertypes' to see a list of trigger
- types.)
- new_name Name of the new trigger.
- script_path Disk path on the server where the script to execute is
- located. If the command line starts with "^webtrigger ",
- the trigger will be considered as a web trigger. See
- Remarks for more information.
-
- Options:
-
- --^position New position of the specified trigger.
- This position must not be in use by another trigger of
- the same type.
- --^filter Checks only items that matches the specified filter.
- --^server Creates the trigger on the specified server.
- If no server is specified, executes the command on the
- one configured on the client.
- (Use 'cm ^help ^objectspec' to learn more about repository
- server specifications.)
-
- == CMD_HELP_TRIGGER_CREATE ==
- Remarks:
-
- Web triggers: A web trigger is created by typing "^webtrigger <target-uri>"
- as the trigger command. In this case, the trigger will execute a POST query
- against the specified URI -where the request body contains a JSON
- dictionary with the trigger environment variables- and a fixed INPUT key
- pointing to an array of strings.
-
- Examples:
-
- cm ^trigger ^create ^after-setselector "BackupMgr" "/path/to/script" --^position=4
-
- cm ^tr ^mk ^before-mklabel new "/path/to/script" --^server=myserver:8084
-
- cm ^tr ^mk ^after-mklabel Log "/path/to/script" --^filter="^rep:myRep,LB*"
- (This trigger will be executed only if the label name starts with 'LB'
- and it is being created in a repository called 'myRep'.)
-
- cm ^tr ^mk ^after-checkin NotifyTeam "^webtrigger http://myserver.org/api"
-
- == CMD_DESCRIPTION_MOVE ==
- Moves or renames a file or directory.
-
- == CMD_USAGE_MOVE ==
- Usage:
-
- cm ^move | ^mv <src_path> <dst_path> [--^format=<str_format>]
- [--^errorformat=<str_format>]
-
- src_path Source item path.
- dst_path Destination item path.
-
- Options:
-
- --^format Retrieves the output message in a specific format. See
- Remarks for more info.
- --^errorformat Retrieves the error message in a specific format. See
- Remarks for more info.
-
- == CMD_HELP_MOVE ==
- Remarks:
-
- This command moves or renames an item in the repository.
- Changes are done in the local filesystem too.
-
- If the source path is a file, the destination path can be a file or a
- directory. In the first case, the file is renamed; otherwise, the item
- is moved.
- If source path is a directory, the destination path must be a directory.
-
- The item to move or rename must exist.
-
- Format:
- {0} Source path (both for '--^format' and '--^errorformat')
- {1} Destination path (both for '--^format' and '--^errorformat')
-
- Examples:
-
- cm ^move file.txt file.old
- (Renames the item.)
-
- cm ^mv .\file.old .\oldFiles
- (Moves 'file.old' to 'oldFiles'.)
-
- cm ^move .\src .\src2
- (Renames a directory.)
-
- == CMD_DESCRIPTION_LABEL ==
- Allows the user to manage labels.
-
- == CMD_USAGE_LABEL ==
- Usage:
-
- cm ^label | ^lb <command> [options]
-
- Commands:
-
- ^create | ^mk
- ^delete | ^rm
- ^rename
-
- To get more information about each command run:
- cm ^label <command> --^usage
- cm ^label <command> --^help
-
- == CMD_HELP_LABEL ==
- Examples:
-
- cm ^label myNewLabel ^cs:42
- ('^create' command is optional.)
-
- cm ^label ^rename myNewLabel newLabelName
- cm ^label ^delete newLabelName
-
- == CMD_DESCRIPTION_LABEL_CREATE ==
- Applies a label to a changeset and creates the label if required.
-
- == CMD_USAGE_LABEL_CREATE ==
- Usage:
-
- cm ^label [^create] <lbspec> [<csetspec> | <wk_path>]
- [--^allxlinkedrepositories]
- [-^c=<str_comment> | -^commentsfile=<comments_file>]
-
- lbspec The new label name.
- (Use 'cm ^help ^objectspec' to learn more about label
- specs.)
- csetspec Name or full specification of the changeset to label.
- (Use 'cm ^help ^objectspec' to learn more about changeset
- specs.)
- wk_path Path of the workspace to label. (The changeset that the
- workspace is pointing will be labeled.)
-
- Options:
-
- --^allxlinkedrepositories Creates the new label in all Xlinked repositories.
- -^c Applies the specified comment to the new label.
- -^commentsfile Applies the comment in the specified file to the
- new label.
-
- == CMD_HELP_LABEL_CREATE ==
- Remarks:
-
- Set the PLASTICEDITOR environment variable to specify an editor for
- entering comments. If the PLASTICEDITOR environment variable is set, and
- the comment is empty, the editor will be automatically launched to allow
- you to specify the comment.
-
- Examples:
-
- cm ^label ^create ^lb:BL001 ^cs:1203 -^commentsfile=commentlb001.txt
- (Creates label 'BL001' attached to changeset 1203, and applies the comment
- in the 'commentlb001.txt' file.)
-
- cm ^label BL002 ^cs:1203 -^c="first release"
- (Creates label 'BL002', with a comment, and attached to changeset 1203.)
-
- == CMD_DESCRIPTION_LABEL_DELETE ==
- Deletes one or more labels.
-
- == CMD_USAGE_LABEL_DELETE ==
- Usage:
-
- cm ^label ^delete <lbspec>[ ...]
-
- lbspec Label to delete. Use a whitespace to separate labels.
- (Use 'cm ^help ^objectspec' to learn more about label
- specs.)
-
- == CMD_HELP_LABEL_DELETE ==
- Remarks:
-
- This command deletes one or more labels.
-
- Examples:
-
- cm ^label ^delete ^lb:BL001
- (Deletes the label 'BL001'.)
-
- cm ^label ^delete ^lb:BL001 ^lb:BL002@reptest@server2:8084
- (Deletes the labels 'BL001' and 'BL002'.)
-
- == CMD_DESCRIPTION_LABEL_RENAME ==
- Renames a label.
-
- == CMD_USAGE_LABEL_RENAME ==
- Usage:
-
- cm ^label ^rename <lbspec> <new_name>
-
- lbspec Label to rename.
- (Use 'cm ^help ^objectspec' to learn more about label specs.)
- new_name New name for the label.
-
- == CMD_HELP_LABEL_RENAME ==
- Remarks:
-
- This command renames a label.
-
- Examples:
-
- cm ^label ^rename ^lb:BL001 BL002
- (Renames the label 'BL001' to 'BL002'.)
-
- == CMD_DESCRIPTION_OBLITERATE ==
- DEPRECATED
-
- == CMD_USAGE_OBLITERATE ==
- DEPRECATED.
-
- == CMD_HELP_OBLITERATE ==
- DEPRECATED.
-
- == CMD_DESCRIPTION_OBJECTSPEC ==
- Describes how to write object specs.
-
- == CMD_USAGE_OBJECTSPEC ==
- Usage:
- cm ^objectspec
- To get all the information about how to build object specs.
-
- == CMD_HELP_OBJECTSPEC ==
- Several Plastic SCM commands expect 'object specs' as input to refer to a
- given object (typically a branch, changeset, repository, etc).
-
- This documentation describes the different "specs" available and how to
- build them.
-
- Each spec type begins with a unique tag, for example "^rep:" or "^cs:". The tag
- must be specified for commands that take a general object spec, for example
- "cm ^setowner object_spec", but can often be omitted for commands that take only
- a single type of spec, for example, "cm ^getfile revision_spec".
-
- -- Repository server spec (repserverspec) --
- ^repserver:name:port
-
- Examples:
- cm ^repo ^list ^repserver:skull:8084
- cm ^repo ^list skull:8084
-
- Side note:
- We call it 'repository server spec', instead of just 'server spec' for
- historical reasons. Long ago, we had separate workspace and repository
- servers, and the naming survived.
-
- -- Repository spec (repspec) --
- ^rep:rep_name@[repserverspec]
-
- Examples:
- cm ^showowner ^rep:codice@localhost:6060
- (Here the "^rep:" is required because ^showowner admits not only repos
- but also other types of objects. So it needs the user to indicate the
- object type.)
-
- -- Branch spec (brspec) --
- ^br:[/]br_name[@repspec]
-
- Examples:
- cm ^switch ^br:/main@^rep:plastic@^repserver:skull:9095
- (In this case "^br:", "^rep" and "^repserver" are not needed, so the
- command admits a much shorter form:
- "cm ^switch main@plastic@skull:9095".)
-
- cm ^find ^revisions "^where ^branch='^br:/main/task001'"
-
- Remark:
- The initial '/' on the branch is not mandatory. We used to specify all
- our branches as /main, /main/task001, and so on. But now, we prefer the
- shorter form main, main/task001 which makes commands more compact.
-
- -- Changeset spec (csetspec) --
- ^cs:cs_number|cs_guid[@repspec]
-
- The number or GUID of the changeset can be specified.
-
- Examples:
- cm ^ls /code --^tree=ae1390ed-7ce9-4ec3-a155-e5a61de0dc77@code@skull:7070
-
- -- Label spec (labelspec) --
- ^lb:lb_name[@repspec]
-
- Examples:
- cm ^switch ^lb:RELEASE2.0
- cm ^switch ^lb:RELEASE1.4@myrep@MYSERVER:8084
-
- -- Revision spec --
- There are different types of rev specs:
-
- ^rev:item_path[#(brspec|csetspec|labelspec)]
-
- ^rev:^serverpath:item_path#(brspec|cset_spec|lb_spec)
-
- ^rev:^revid:rev_id[@rep_spec]
-
- ^rev:^itemid:item_id#(br_spec|cset_spec|lb_spec)
-
- Examples:
- cm ^diff ^rev:readme.txt#^cs:19 ^rev:readme.txt#^cs:20
-
- cm ^diff ^serverpath:/doc/readme.txt#^cs:19@myrepo \
- ^serverpath:/doc/readme.txt#^br:/main@myrepo@localhost:8084
-
- cm ^cat ^revid:1230@^rep:myrep@^repserver:myserver:8084
-
- -- Item spec --
- ^item:path
- Rarely used.
-
- Example:
- cm ^find ^revision "^where ^item='^item:.'"
-
- -- Attribute spec --
- ^att:att_name[@repspec]
-
- Example:
- cm ^attribute ^set ^att:merged@code@doe:8084 ^cs:25@code@doe:8084 done
-
- -- Shelve spec --
- ^sh:sh_number[@repspec]
-
- Example:
- cm ^diff ^sh:2 ^sh:4
-
- -- Workspace specs --
- ^wk:name@clientmachine
-
- Rarely used, since they only apply to workspace related commands. Useful to
- specify the workspace by name and machine instead of path.
-
- Examples:
- cm ^showselector ^wk:codebase@modok
-
- Side note:
- These specs come from the old days of Plastic SCM 2.x where 'workspace
- servers' existed as a way to store workspace metadata in a centralized
- way. Were deprecated due to performance issues.
-
- == CMD_DESCRIPTION_PARTIAL ==
- Runs commands in a partial workspace.
-
- == CMD_USAGE_PARTIAL ==
- Usage:
-
- cm ^partial <command> [options]
-
- Commands:
-
- ^configure
- ^add
- ^undo
- ^co | ^checkout
- ^unco | ^undocheckout
- ^ci | ^checkin
- ^mv | ^move
- ^rm | ^remove
- ^stb | ^switch
- ^upd | ^update
- ^shelve | ^shelveset
-
- To get more information about each command run:
- cm ^partial <command> --^usage
- cm ^partial <command> --^help
-
- == CMD_HELP_PARTIAL ==
- Examples:
-
- cm ^partial ^configure +/background-blue.png
- cm ^partial ^update landscape-1024.png
- cm ^partial ^checkin eyes-green.png eyes-black.png
-
- == CMD_DESCRIPTION_PARTIAL_ADD ==
- Adds an item to version control.
-
- == CMD_USAGE_PARTIAL_ADD ==
- Usage:
-
- cm ^partial ^add [-^R | -^r | --^recursive] [--^silent] [--^parents]
- [--^ignorefailed] [--^skipcontentcheck] <item_path>[ ...]
- [--^format=<str-format>] [--^errorformat=<str-format>]
-
- item_path Items to add. Use double quotes (" ") to specify paths
- containing spaces. Use a whitespace to separate paths.
- Use * to add all the contents of the current directory.
-
- Options:
-
- -^R Adds items recursively.
- --^silent Does not show any output.
- --^parents Includes the parent directories of the items specified
- in the operation.
- --^ignorefailed If an item cannot be added, the add operation will
- continue without it. Note: If a directory cannot be
- added, its content is not added.
- --^skipcontentcheck When the extension is not enough to set the file as
- text or binary, it will be set as binary by default
- instead of checking the content to detect the type.
- --^format Retrieves the output message in a specific format. Check
- the examples for more information.
- --^errorformat Retrieves the error message (if any) in a specific
- format. Check the examples for more information.
-
- == CMD_HELP_PARTIAL_ADD ==
- Remarks:
-
- Requirements to add items:
- - The parent directory of the item to add must be previously added.
-
- Examples:
-
- cm ^partial ^add pic1.png pic2.png
- (Adds 'pic1.png' and 'pic2.png' items.)
-
- cm ^partial ^add c:\workspace\picture.png
- (Adds 'picture.png' item in path 'c:\workspace'.)
-
- cm ^partial ^add -^R c:\workspace\src
- (Recursively adds 'src'.)
-
- cm ^partial ^add --^parents samples\design01.png
- (Adds 'design01.png' file and 'samples' parent folder.)
-
- cm ^partial ^add -^R *
- (Recursively adds all the contents of the current directory.)
-
- cm ^partial ^add -^R * --^format="ADD {0}" --^errorformat="ERR {0}"
- (Recursively adds all the contents of the current directory, printing
- '^ADD <item>' for successfully added files, and '^ERR <item>' for items that
- could not be added.)
-
- == CMD_DESCRIPTION_PARTIAL_CHECKIN ==
- Stores changes in the repository.
-
- == CMD_USAGE_PARTIAL_CHECKIN ==
- Usage:
-
- cm ^partial ^checkin | ^ci [<item_path>[ ...]]
- [-^c=<str_comment> | -^commentsfile=<comments_file>]
- [--^all | -^a] [--^applychanged] [--^keeplock]
- [--^symlink] [--^ignorefailed]
- [--^machinereadable [--^startlineseparator=<sep>]
- [--^endlineseparator=<sep>] [--^fieldseparator=<sep>]]
-
- Options:
-
- item_path Items to checkin. Use double quotes (" ") to specify
- paths containing spaces. Use a whitespace to separate
- paths.
- Use . to apply checkin to current directory.
- -^c Specifies a comment to the changeset created in the
- checkin operation.
- -^commentsfile Applies the comment from the specified file to the
- changeset created in the checkin operation.
- --^all | -^a Includes also the items changed, moved, and deleted
- locally on the specified paths.
- --^applychanged Applies the checkin operation to the changed items
- detected in the workspace along with the checked out
- items.
- --^private Private items detected in the workspace are also
- included.
- --^keeplock Keeps the lock of the locked items after the checkin
- operation.
- --^symlink Applies the checkin operation to the symlink and not to
- the target.
- --^ignorefailed Any changes that cannot be applied (because the lock
- - a.k.a. exclusive checkout - cannot be adquired or
- because local changes are in conflict with the server
- changes) are discarded and the checkin operation
- continues without them.
- --^machinereadable Outputs the result in an easy-to-parse format.
- --^startlineseparator Used with the '--^machinereadable' flag, specifies how
- the lines should start.
- --^endlineseparator Used with the '--^machinereadable' flag, specifies how
- the lines should end.
- --^fieldseparator Used with the '--^machinereadable' flag, specifies how
- the fields should be separated.
-
- == CMD_HELP_PARTIAL_CHECKIN ==
- Remarks:
-
- - If <item_path> is not specified, the checkin will involve all the
- pending changes in the workspace.
- - The checkin operation always applies recursively from the given path.
- - To checkin an item:
- - The item must be under source code control.
- - The item must be checked out.
- - If the item is changed but not checked out, the '--^applychanged' flag
- is not necessary unless <item_path> is a directory or it contains
- wildcards ('*').
-
- Revision content should be different from previous revision in order to be
- checked in.
-
- Set the PLASTICEDITOR environment variable to specify an editor for
- entering comments. If the PLASTICEDITOR environment variable is set, and
- the comment is empty, the editor will be automatically launched to allow
- you to specify the comment.
-
- Reading input from stdin:
-
- The '^partial ^checkin' command can read paths from stdin. To do this, pass a
- single dash "-".
- Example: cm ^partial ^checkin -
-
- Paths will be read until an empty line is entered.
- This allows you to use pipe to specify which files to checkin.
- Example:
- dir /S /B *.c | cm ^partial ^checkin --^all -
- (In Windows, checkins all .c files in the workspace.)
-
- Examples:
-
- cm ^partial ^checkin figure.png landscape.png
- (Applies the checkin to 'figure.png' and 'landscape.png' checked-out files.)
-
- cm ^partial ^checkin . -^commentsfile=mycomment.txt
- (Applies checkin to current directory and sets the comment from the
- 'mycomment.txt' file.)
-
- cm ^partial ^ci background.png -^c="my comment" --^keeplock
- (Applies the checkin to 'background.png', includes a comment, and keeps the
- lock.)
-
- cm ^partial ^checkin --^applychanged
- (Applies the checkin to all pending changes in the workspace.)
-
- cm ^partial ^checkin link --^symlink
- (Applies the checkin to the symlink file and not to the target.)
-
- cm ^partial ^checkin . --^ignorefailed
- (Applies checkin to current directory, ignoring the changes that cannot be
- applied.)
-
- == CMD_DESCRIPTION_PARTIAL_CHECKOUT ==
- Marks files as ready to modify.
-
- == CMD_USAGE_PARTIAL_CHECKOUT ==
- Usage:
-
- cm ^partial ^checkout | ^co [<item_path>[ ...]] [--^resultformat=<str_format>]
- [--^silent] [--^ignorefailed]
-
- Options:
-
- item_path Items to checkout. Use double quotes (" ") to specify
- paths containing spaces. Use a whitespace to separate
- paths.
- Use . to apply checkout to current directory.
- --^resultformat Retrieves the output result message in a specific
- format.
- --^silent Does not show any output.
- --^ignorefailed If an item cannot be locked (the exclusive checkout
- cannot be performed), the checkout operation will
- continue without it.
-
- == CMD_HELP_PARTIAL_CHECKOUT ==
- Remarks:
-
- To checkout an item:
- - The item must be under source code control.
- - The item must be checked in.
-
- If locks are configured on the server (lock.conf exists), then each time
- a checkout on a path happens, Plastic checks if it meets any of the rules
- and if so, the path will be in exclusive checkout (locked) so that none can
- simultaneously checkout.
- You can get all the locks in the server by using 'cm ^lock ^list'.
- Check the Administrator Guide to learn how locking works:
- https://www.plasticscm.com/download/help/locking
-
- Examples:
-
- cm ^partial ^checkout pic1.png pic2.png
- (Checkouts 'pic1.png' and 'pic2.png' files.)
-
- cm ^partial ^co *.png
- (Checkouts all png files.)
-
- cm ^partial ^checkout .
- (Checkouts current directory.)
-
- cm ^partial ^checkout -^R c:\workspace\src
- (Recursively checkouts 'src' folder.)
-
- == CMD_DESCRIPTION_PARTIAL_CONFIGURE ==
- Allows you to configure your workspace by loading or unloading items from it.
-
- == CMD_USAGE_PARTIAL_CONFIGURE ==
- Usage:
-
- cm ^partial ^configure <+|-path>[ ...] [--^silent] [--^ignorefailed]
- [--^ignorecase] [--^restorefulldirs]
- [--^machinereadable [--^startlineseparator=<sep>]
- [--^endlineseparator=<sep>] [--^fieldseparator=<sep>]]
-
- path Paths to be loaded or unloaded. Use double quotes (" ") to
- specify paths containing spaces. Use a whitespace to separate
- paths.
- Paths have to start with "/".
-
- Options:
-
- --^silent Does not show any output.
- --^ignorefailed Skips all errors during the process. Incorrect paths
- will not cause the command to stop.
- --^ignorecase Ignores casing on the paths. With this flag, '^configure'
- will work for "/Data/Textures" even if the user writes
- "/data/teXtures".
- --^restorefulldirs Resets an invalid directory configuration (happens when
- a non-partial operation is run on a partial workspace).
- The directories in this list will be fully configured
- (full check) which means they will automatically
- download new content during the update.
- This operation does not download any files, just
- restores the directory configuration on partial
- workspaces.
- --^machinereadable Outputs the result in an easy-to-parse format.
- --^startlineseparator Used with the '--^machinereadable' flag, specifies how
- the lines should start.
- --^endlineseparator Used with the '--^machinereadable' flag, specifies how
- the lines should end.
- --^fieldseparator Used with the '--^machinereadable' flag, specifies how
- the fields should be separated.
-
- == CMD_HELP_PARTIAL_CONFIGURE ==
- Remarks:
-
- The command assumes recursive operation.
-
- Examples:
-
- cm ^partial ^configure +/landscape_grey.png
- (Loads 'landscape_grey.png' item.)
-
- cm ^partial ^configure -/landscape_black.png
- (Unloads 'landscape_black.png' item.)
-
- cm ^partial ^configure +/soft -/soft/soft-black.png
- (Loads all 'soft' directory children items except 'soft-black.png'.)
-
- cm ^partial ^configure -/
- (Unloads the whole workspace.)
-
- cm ^partial ^configure -/ +/
- (Loads the whole workspace.)
-
- cm ^partial ^configure -/figure-64.png --^ignorefailed
- (Unloads 'figure-64.png' item even if it was already unloaded.)
-
- cm ^partial ^configure +/ --^restorefulldirs
- (Sets all directories to automatically download the new content.)
-
- cm ^partial ^configure +/src/lib --^restorefulldirs
- (Sets only '/src/lib' and its subdirectories to automatically download the
- new content.)
-
- == CMD_DESCRIPTION_PARTIAL_MOVE ==
- Moves or renames a file or directory.
-
- == CMD_USAGE_PARTIAL_MOVE ==
- Usage:
-
- cm ^partial ^move | ^mv <src_path> <dst_path> [--^format=<str_format>]
-
- src_path Source item path.
- dst_path Destination item path.
-
- Options:
-
- --^format Retrieves the output message in a specific format. See
- Remarks for more info.
-
- == CMD_HELP_PARTIAL_MOVE ==
- Remarks:
-
- This command moves or renames an item in the repository.
- Changes are done in the local filesystem too.
-
- If the source path is a file, the destination path can be a file or a
- directory. In the first case, the file will be renamed; otherwise, the item
- will be moved.
- If source path is a directory, the destination path must be a directory.
-
- The item to move or rename must exist.
-
- Format:
- {0} Source path.
- {1} Destination path.
-
- Examples:
-
- cm ^partial ^move file.png file-blue.png
- (Renames the item.)
-
- cm ^partial ^mv .\file-blue.png .\blueFiles
- (Moves 'file-blue.png' to 'blueFiles'.)
-
- cm ^partial ^move .\design .\marketing
- (Renames a directory.)
-
- == CMD_DESCRIPTION_PARTIAL_RM ==
- Deletes a file or directory from version control.
-
- == CMD_USAGE_PARTIAL_RM ==
- Usage:
-
- cm ^partial ^remove | ^rm <item_path>[ ...] [--^nodisk]
-
- item_path Items path to remove. Use double quotes (" ") to
- specify paths containing spaces. Use a whitespace to separate
- paths.
-
- Options:
-
- --^nodisk Removes from version control, but keeps the item on disk.
-
- == CMD_HELP_PARTIAL_RM ==
- Remarks:
-
- Items are deleted from disk. Removed items are removed from the parent
- directory in the source code control.
-
- Requirements:
- - The item must be under source code control.
-
- Examples:
-
- cm ^partial ^remove src
- (Removes 'src'. If 'src' is a directory, this is the same that:
- cm ^partial ^remove -^R src.)
-
- cm ^partial ^remove c:\workspace\pic01.png --^nodisk
- (Removes 'pic01.png' from version control, but keeps it on disk.)
-
-
- == CMD_DESCRIPTION_PARTIAL_SHELVESET ==
- Allows the user to manage partial shelvesets.
-
- == CMD_USAGE_PARTIAL_SHELVESET ==
- Usage:
-
- cm ^partial ^shelveset | ^shelve <command> [options]
-
- Commands:
-
- ^create | ^mk
- ^apply
- ^delete | ^rm
-
- To get more information about each command run:
- cm ^partial ^shelveset <command> --^usage
- cm ^partial ^shelveset <command> --^help
-
- == CMD_HELP_PARTIAL_SHELVESET ==
- Examples:
-
- cm ^partial ^shelveset ^create -^c="my comment"
- cm ^partial ^shelveset ^apply sh:3
- cm ^partial ^shelveset ^delete sh:5
-
- == CMD_DESCRIPTION_PARTIAL_SHELVESET_CREATE ==
- Shelves chosen pending changes.
-
- == CMD_USAGE_PARTIAL_SHELVESET_CREATE ==
- Usage:
-
- cm ^partial ^shelveset | ^shelve ^create | ^mk [<item_path>[ ...]]
- [-^c=<str_comment> | -^commentsfile=<comments_file>]
- [--^applychanged] [--^symlink] [--^ignorefailed]
- [--^machinereadable [--^startlineseparator=<sep>]
- [--^endlineseparator=<sep>] [--^fieldseparator=<sep>]]
-
- Options:
-
- item_path Items to shelve. Use double quotes (" ") to specify
- paths containing spaces. Use a whitespace to separate
- paths. Use . to apply shelve to current directory.
- -^c Specifies a comment to the changeset created in the
- shelve operation.
- -^commentsfile Applies the comment from the specified file to the
- changeset created in the shelve operation.
- --^applychanged Applies the shelve operation to the changed items
- detected in the workspace along with the checked out
- items.
- --^symlink Applies the shelve operation to the symlink and not to
- the target.
- --^ignorefailed Any changes that cannot be applied (because the lock
- - a.k.a. exclusive checkout - cannot be adquired or
- because local changes are in conflict with the server
- changes) are discarded and the shelve operation
- continues without them.
- --^machinereadable Outputs the result in an easy-to-parse format.
- --^startlineseparator Used with the '--^machinereadable' flag, specifies how
- the lines should start.
- --^endlineseparator Used with the '--^machinereadable' flag, specifies how
- the lines should end.
- --^fieldseparator Used with the '--^machinereadable' flag, specifies how
- the fields should be separated.
-
- == CMD_HELP_PARTIAL_SHELVESET_CREATE ==
- The '^partial ^shelveset ^create' command stores the contents of checked out items
- inside the repository. This way the contents are protected without the need to
- checkin the files.
-
- Remarks:
-
- If neither <item_path> nor any option is specified, the shelveset will
- include all the pending changes in the workspace.
-
- The '^partial ^shelveset ^create' operation is always applied recursively from
- the given path.
-
- The '^partial ^shelveset ^create' operation is the default, which means that,
- if no other operation is defined, the command will try to perform a creation.
-
- Requirements to shelve an item:
- - The item must be under source code control.
- - The item must be checked out or changed.
-
- Set the PLASTICEDITOR environment variable to specify an editor for
- entering comments. If the PLASTICEDITOR environment variable is set, and
- the comment is empty, the editor will be automatically launched to allow
- you to specify the comment.
-
- Examples:
-
- cm ^partial ^shelveset figure.png landscape.png
- (Creates a new shelveset with 'figure.png' and 'landscape.png' checked-out files.)
-
- cm ^partial ^shelveset . -^commentsfile=mycomment.txt
- (Creates a new shelveset with every checked-out file in current directory
- and sets the comment from the 'mycomment.txt' file.)
-
- cm ^partial ^shelve background.png -^c="my comment"
- (Creates a new shelveset with 'background.png', includes a comment.)
-
- cm ^partial ^shelveset --^applychanged
- (Creates a new shelveset all pending changes in the workspace.)
-
- cm ^partial ^shelveset link --^symlink
- (Creates a new shelveset with the symlink file and not the target.)
-
- cm ^partial ^shelveset . --^ignorefailed
- (Creates a new shelveset with every checked-out file in current directory,
- ignoring (skipping) the changes that cannot be applied.)
-
- == CMD_DESCRIPTION_PARTIAL_SHELVESET_APPLY ==
- Applies a stored shelveset.
-
- == CMD_USAGE_PARTIAL_SHELVESET_APPLY ==
- Usage:
-
- cm ^partial ^shelveset ^apply <sh_spec> [--^encoding=<name>]
- [--^comparisonmethod=(^ignoreeol | ^ignorewhitespaces| \
- ^ignoreeolandwhitespaces | ^recognizeall)]
-
- sh_spec Shelveset specification. (Use 'cm ^help ^objectspec' to
- learn more about shelveset specs.)
-
- Options:
-
- --^encoding Specifies the output encoding, i.e.: utf-8.
- See the MSDN documentation at
- http://msdn.microsoft.com/en-us/library/system.text.encoding.aspx
- to get the table of supported encodings and its format,
- (at the end of the page, in the "Name" column).
- --^comparisonmethod Sets the comparison method. See Remarks for more info.
-
- == CMD_HELP_PARTIAL_SHELVESET_APPLY ==
- The '^partial ^shelveset ^apply' command restores the contents of a stored shelveset.
-
- Remarks:
-
- Comparison methods:
- ^ignoreeol Ignores end of line differences.
- ^ignorewhitespaces Ignores whitespace differences.
- ^ignoreeolandwhitespaces Ignores end of line and whitespace differences.
- ^recognizeall Detects end of line and whitespace differences.
-
- Examples:
-
- cm ^partial ^shelveset ^apply ^sh:3
- (Applies a stored shelve.)
-
- == CMD_DESCRIPTION_PARTIAL_SHELVESET_DELETE ==
- Deletes a shelveset.
-
- == CMD_USAGE_PARTIAL_SHELVESET_DELETE ==
- Usage:
-
- cm ^partial ^shelveset ^delete | ^rm <sh_spec>
-
- sh_spec Shelveset specification. (Use 'cm ^help ^objectspec' to
- learn more about shelveset specs.)
-
- == CMD_HELP_PARTIAL_SHELVESET_DELETE ==
- The '^partial ^shelveset ^delete' command deletes a shelveset.
-
- Examples:
-
- cm ^partial ^shelveset ^delete ^sh:3
- (Removes a stored shelveset.)
-
-
- == CMD_DESCRIPTION_PARTIAL_SWITCH ==
- Sets a branch as the working branch.
-
- == CMD_USAGE_PARTIAL_SWITCH ==
- Usage:
-
- cm ^switch <branch_spec> [--^report | --^silent] [--^workspace=<path>]
- (Sets the working branch and updates the workspace.)
-
- cm ^switch <branch_spec> --^configure <+|-path>[ ...] [--^silent]
- [--^ignorefailed] [--^ignorecase] [--^workspace=<path>]
- (Sets the working branch and runs a workspace configuration like the 'cm
- ^partial ^configure' command does.)
-
- branch_spec Branch specification. (Use 'cm ^help ^objectspec' to learn
- more about branch specs.)
- path Paths to be loaded or unloaded. Use double quotes (" ")
- to specify paths containing spaces. Use a whitespace to
- separate paths. Paths must start with "/".
-
- Options:
-
- --^silent Does not show any output.
- --^report Prints a list of the applied changes when the command
- is finished. Using '--^silent' will override this setting.
- This option only works when the '--^configure' option
- is not specified.
- --^configure Configures (loads / unloads items) the workspace
- after updating the working branch. Check 'cm ^partial
- ^configure --^help' to learn how to specify the paths
- to configure.
- --^ignorefailed Skips all errors during the configuration process.
- Incorrect paths will not cause the command to stop.
- --^ignorecase Ignores casing on the paths. With this flag, option
- '--^configure' works for "/Data/Textures" even if the user
- writes "/data/teXtures".
- --^workspace=path Path where the workspace is located.
-
- == CMD_HELP_PARTIAL_SWITCH ==
- Remarks:
-
- This command allows users to update the working branch. After updating the
- branch, the command updates the workspace to the new branch as the
- 'cm ^partial ^update' command would do. However, if the '--^configure' option is
- specified, the command allows to configure the workspace using the new
- branch configuration as the 'cm ^partial ^configure' command would do.
-
- Examples:
-
- cm ^switch ^br:/main/task
- (Sets /main/task as working branch and updates the workspace.)
-
- cm ^switch ^br:/main/task --^configure +/art/images
- (Sets /main/task as working branch and configures the workspace to
- load the /art/images folder.)
-
- == CMD_DESCRIPTION_PARTIAL_UNCO ==
- Undoes the checkout on an item.
-
- == CMD_USAGE_PARTIAL_UNCO ==
- Usage:
-
- cm ^partial ^undocheckout | ^unco <item_path>[ ...] [--^silent]
-
- item_path Items to apply the operation. Use double quotes (" ")
- to specify paths containing spaces. Use a whitespace to
- separate paths.
- Use . to apply the operation to current directory.
-
- Options:
-
- --^silent Does not show any output.
-
- == CMD_HELP_PARTIAL_UNCO ==
- Remarks:
-
- If an item is checked-out and you do not want to checkin it, you can undo
- the checkout using this command. Both files and folders can be unchecked
- out. The item will be updated to the state it had before checking it out.
-
- Requirements:
- - The item must be under source code control.
- - The item must be checked out.
-
- Examples:
-
- cm ^partial ^undocheckout .
- (Undoes checkouts in the current directory.)
-
- cm ^partial ^undocheckout pic1.png pic2.png
- cm ^unco c:\workspace\design01.png
- (Undoes checkouts of the selected files.)
-
- == CMD_DESCRIPTION_PARTIAL_UNDO ==
- Undoes changes in a workspace.
-
- == CMD_USAGE_PARTIAL_UNDO ==
- Usage:
-
- cm ^partial ^undo [<path>[ ...]] [--^symlink] [-^r | --^recursive]
- [<filter>[ ...]]
- [--^silent | --^machinereadable [--^startlineseparator=<sep>]
- [--^endlineseparator=<sep>] [--^fieldseparator=<sep>]]
-
- path Path of the files or directories to apply the
- operation to. Use double quotes (" ") to specify
- paths containing spaces. Use a whitespace to
- separate paths.
- If no path is specified, by default the undo
- operation will take all of the files in the current
- directory.
- filter Applies the specified filter or filters to the given
- paths. Use a whitespace to separate filters. See the
- Filters section for more information.
-
- Options:
-
- --^symlink Applies the undo operation to the symlink and not
- to the target.
- -^r Executes the undo recursively.
- --^silent Does not show any output.
- --^machinereadable Outputs the result in an easy-to-parse format.
- --^startlineseparator Used with the '--^machinereadable' flag, specifies
- how the lines should start.
- --^endlineseparator Used with the '--^machinereadable' flag, specifies
- how the lines should end.
- --^fieldseparator Used with the '--^machinereadable' flag, specifies
- how the fields should be separated.
-
- Filters:
-
- If no flag is specified, by default, all changes are undone, but the
- paths can be filtered using one or more of the flags below.
- If a file or directory matches one or more of the specified kinds of change,
- all of the changes on said file or directory will be undone.
- For example, if you specify both '--^checkedout' and '--^moved', if a file is
- both checkedout and moved, both changes will be undone.
-
- --^checkedout Select checked-out files and directories.
- --^unchanged Select files whose content is unchanged.
- --^changed Select locally changed or checked-out files and
- directories.
- --^deleted Select deleted files and directories.
- --^moved Select moved files and directories.
- --^added Select added files and directories.
-
- == CMD_HELP_PARTIAL_UNDO ==
- Remarks:
-
- The ^undo command is dangerous - it undoes work in an irreversible way.
- Once the ^undo has finished, it is not possible to recover the previous state
- of the files and directories affected by it. If no path is specified
- in the arguments, by default it will undo every change in the current
- directory, but not recursively.
- These are equivalent when executed from the /src directory:
-
- /src
- |- file.txt
- |- code.cs
- \- /test
- |- test_a.py
- \- test_b.py
-
- cm ^partial ^undo
- cm ^partial ^undo *
- cm ^partial ^undo file.txt code.cs /test
-
- cm ^partial ^undo .
- cm ^partial ^undo /src file.txt code.cs
-
- If you want the operation to be recursive, you must specify the '-^r' flag.
-
- To undo all of the changes below a directory (including changes affecting
- the directory itself):
-
- cm ^partial ^undo dirpath -^r
-
- If dirpath is a workspace path, every change in the workspace will be
- undone.
-
- Examples:
-
- cm ^partial ^undo . -^r
- (Undoes all changes in the current directory recursively. If executed
- from the workspace's root, undoes all changes in the entire workspace.)
-
- cm ^partial ^co file.txt
- cm ^partial ^undo file.txt
- (Undoes the checkout on file.txt.)
-
- ^echo ^content >> file.txt
- cm ^partial ^undo file.txt
- (Undoes the local change to file.txt.)
-
- cm ^partial ^undo src
- (Undoes changes to the src directory and its files.)
-
- cm ^partial ^undo src/*
- (Undo changes in every file and directory contained in src, without
- affecting src.)
-
- cm ^partial ^undo *.cs
- (Undo changes to every file or directory that matches *.cs in the current
- directory.)
-
- cm ^partial ^undo *.cs -^r
- (Undoes changes on every file or directory that matches *.cs in the current
- directory and every directory below it.)
-
- cm ^partial ^co file1.txt file2.txt
- ^echo ^content >> file1.txt
- cm ^partial ^undo --^unchanged
- (Undoes the checkout of unchanged file2.txt, ignoring locally changed
- file1.txt.)
-
- ^echo ^content >> file1.txt
- ^echo ^content >> file2.txt
- cm ^partial ^co file1.txt
- cm ^partial ^undo --^checkedout
- (Undoes the changes in checked-out file file1.txt, ignoring file2.txt as it is
- not checked-out.)
-
- cm ^partial ^add file.txt
- cm ^partial ^undo file.txt
- (Undoes the add of file.txt, making it once again a private file.)
-
- ^rm file1.txt
- ^echo ^content >> file2.txt
- cm ^partial ^add file3.txt
- cm ^partial ^undo --^deleted --^added *
- (Undoes the file1.txt delete and file3.txt add, ignoring the file2.txt
- change.)
-
- == CMD_DESCRIPTION_PARTIAL_UPDATE ==
- Updates the partial workspace and downloads latest changes.
-
- == CMD_USAGE_PARTIAL_UPDATE ==
- Usage:
-
- cm ^partial ^update [<item_path>[ ...]] [--^changeset=<number>]
- [--^silent | --^report] [--^dontmerge]
- [--^machinereadable [--^startlineseparator=<sep>]
- [--^endlineseparator=<sep>] [--^fieldseparator=<sep>]]
-
- item_path Items to be updated. Use double quotes (" ") to specify
- paths containing spaces. Use a whitespace to separate
- paths.
- Use . to apply update to current directory.
- If no path is specified, then the current partial
- workspace is fully updated.
-
- Options:
-
- --^changeset Updates the partial workspace to a specific changeset.
- --^silent Does not show any output.
- --^report Prints a list of the applied changes when the command
- is finished. Using '--^silent' will override this setting.
- --^dontmerge Does not merge the file conflicts, it just skips them.
- The other changes are properly applied. This option can
- be useful for automation to avoid user interaction.
- --^machinereadable Outputs the result in an easy-to-parse format.
- --^startlineseparator Used with the '--^machinereadable' flag,
- specifies how the lines should start.
- --^endlineseparator Used with the '--^machinereadable' flag,
- specifies how the lines should end.
- --^fieldseparator Used with the '--^machinereadable' flag,
- specifies how the fields should be separated.
-
-
- == CMD_HELP_PARTIAL_UPDATE ==
- Remarks:
-
- The '^partial ^update' command updates the out-of-date files.
-
- The command assumes recursive operation.
-
- If all the specified paths are files inside the same Xlink when using the
- '--^changeset' option, then the versions to download are searched in the
- specified changeset of the Xlinked repository.
-
- Examples:
-
- cm ^partial ^update
- (Updates all in the current partial workspace.)
-
- cm ^partial ^update .
- (Updates all current directory children items.)
-
- cm ^partial ^update backgroud-blue.png
- (Updates 'backgroud-blue.png' item.)
-
- cm ^partial ^update soft_black.png soft-grey.png
- (Updates 'soft_black.png' and 'soft-grey.png' items.)
-
- cm ^partial ^update src --^report
- (Updates all 'src' directory children items, printing the applied changes
- list at the end.)
-
- cm ^partial ^update src --^changeset=4
- (Updates all 'src' directory children items to the content they loaded
- in the changeset 4.)
-
- cm ^partial ^update xlink/first.png --^changeset=4
- (Updates 'xlink/first.png' item to the content it loaded in the changeset 4
- of the Xlinked repository.)
-
- == CMD_DESCRIPTION_PATCH ==
- Generates a patch file from a spec or applies a generated patch to the current
- workspace.
-
- == CMD_USAGE_PATCH ==
- Usage:
-
- cm ^patch <source_spec> [<source_spec>] [--^output=<output_file>]
- [--^tool=<path_to_diff>]
- Generates a patch file that contains the differences of a branch,
- a changeset, or the differences between changesets. It also tracks
- differences of text and binary files.
-
- cm ^patch --^apply <patch_file> [--^tool=<path_to_patch>]
- Allows to apply the contents of a generated patch file in the current
- workspace.
-
- source_spec Full spec of a changeset or a branch. (Use
- 'cm ^help ^objectspec' to learn more about specs.)
- output_file File to save the patch content. It no file is specified,
- the patch content will be printed on standard output.
- patch_file Patch file to apply in the current workspace.
-
- Options:
-
- --^output Sets the output file of the patch command.
- --^tool Sets the application to use (diff or patch).
-
- == CMD_HELP_PATCH ==
- Limitations:
-
- If the output patch file already exists, the command will not overwrite it.
-
- When applying a patch, the command will not apply changes to modified files
- if they are not present on disk.
-
- Important:
-
- This command requires Diff and Patch tools, publicly available at
- http://gnuwin32.sourceforge.net/packages/patch.htm and
- http://gnuwin32.sourceforge.net/packages/diffutils.htm
-
- Once installed, it's recommended to add their location to the PATH
- environment variable.
-
- Examples:
-
- cm ^patch ^cs:4@default@localhost:8084
- (Prints on console the differences of cset 4 in unified format.)
-
- cm ^patch ^br:/main --^output=file.patch
- (Generates a patch file with the differences of branch "main".)
-
- cm ^patch ^br:/main --^output=file.patch --^tool=C:\gnu\diff.exe
- (Same as above, using a custom exe.)
-
- cm ^patch ^cs:2@default ^cs:4@default
- (Prints on console the differences between csets 2 and 4 in unified format.)
-
- cm ^patch --^apply file.patch --^tool=C:\gnu\patch.exe
- (Applies the patch in 'file.patch' to the local workspace with a custom exe.)
-
- == CMD_DESCRIPTION_PROFILE ==
- Allows the user to manage server connection profiles.
-
- == CMD_USAGE_PROFILE ==
- Usage:
-
- cm ^profile <command> [options]
-
- Commands:
-
- ^list | ^ls
- ^create | ^mk
- ^delete | ^rm
-
- To get more information about each command run:
- cm ^profile <command> --^usage
- cm ^profile <command> --^help
-
- == CMD_HELP_PROFILE ==
- Examples:
-
- cm ^profile
- cm ^profile ^list
- cm ^profile ^create
- cm ^profile ^delete 1
-
- == CMD_DESCRIPTION_PROFILE_LIST ==
- Lists the server connection profiles configured on the client.
-
- == CMD_USAGE_PROFILE_LIST ==
- Usage:
-
- cm ^profile [^list | ^ls] [--^format=<str_format>]
-
- Options:
-
- --^format Retrieves the output message in a specific format.
- See Remarks for more info.
-
- == CMD_HELP_PROFILE_LIST ==
- Remarks:
-
- Output format parameters (--^format option):
- This command accepts a format string to show the output.
- The output parameters of this command are the following:
- {^index} | {0} Profile index in the profiles list
- {^name} | {1} Profile name
- {^server} | {2} Profile server
- {^user} | {3} Profile user
- {^workingmode} | {4} Profile working mode
- {^securityconfig} | {5} Profile security config
- {^tab} Inserts a tab space
- {^newline} Inserts a new line
-
- Examples:
-
- cm ^profile
- (Lists all the profiles using the default format)
-
- cm ^profile --^format="{index,2} {server,-20}"
- (Writes the profile index in 2 spaces, aligned to the right, then two blanks,
- and then the repository server in 20 spaces, aligned to the left.)
-
- cm ^profile --^format="{0,2} {2,-20}"
- (Writes the same output as the previous example.)
-
- == CMD_DESCRIPTION_PROFILE_CREATE ==
- Creates a new server connection profile.
-
- == CMD_USAGE_PROFILE_CREATE ==
- Usage:
-
- cm ^profile [^create | ^mk]
- (Creates a new profile interactively.)
-
- cm ^profile [^create | ^mk] --^server=<server_addr> --^username=<username>
- --^password=<password> --^workingmode=<workingmode>
- (Creates a new server connection profile using a user/password
- authentication mode.)
-
- cm ^profile [^create | ^mk] --^server=<server_addr> --^username=<username>
- --^token=<token> --^workingmode=SSOWorkingMode
- (Creates a new server connection profile using Single Sign On authentication
- mode.)
-
- Options:
-
- --^server Creates the connection profile for the specified server.
- --^username The username that should be used in the connection profile
- --^password The plain-text password that should be used in the connection
- profile. This option is only valid for authentication modes
- that are based on a user and password.
- --^token The plain-text token that should be used in the connection
- profile. This option is only valid for authentication modes
- that are based on a token (SSOWorkingMode for now).
- --^workingmode The target server's authentication mode.
- Available users/security working modes:
- ^LDAPWorkingMode (LDAP)
- ^UPWorkingMode (User and password)
- ^SSOWorkingMode (Single Sign On)
-
- == CMD_HELP_PROFILE_CREATE ==
- Remarks:
-
- When using this command interactively (without options), the client will try
- to connect to the server to obtain the working mode and check the credentials.
- This guarantees that the resulting profile is correct.
-
- When specifying the options, the client will generate the connection profile
- without connecting to the server. This is useful when creating connection
- profiles for automation purposes.
-
- Examples:
-
- cm ^profile ^create
- (Creates a new connection profile interactively.)
-
- cm ^profile ^create --^server=plastic.domain.com:8087 --^username=sergio
- --^password=thisissupersecret --^workingmode=LDAPWorkingMode
- (Creates a new connection profile to connect to 'plastic.domain.com:8087'
- using user 'sergio' and password 'thisissupersecret' through LDAP working mode.)
-
- cm ^profile ^create --^server=plastic.domain.com:8087 --^username=sergio
- --^token="TOKENAMoKJ9iAA(...)12fssoprov:unityid" --workingmode=^SSOWorkingMode
- (Creates a new connection profile to connect to 'plastic.domain.com:8087'
- using user 'sergio' and the specified token through Single Sign On working mode.)
-
- == CMD_DESCRIPTION_PROFILE_DELETE ==
- Deletes a server connection profile from the client's configuration.
-
- == CMD_USAGE_PROFILE_DELETE ==
- Usage:
-
- cm ^profile ^delete | ^rm <index | name>
- cm ^profile ^delete | ^rm --index=<index>
- cm ^profile ^delete | ^rm --name=<name>
-
- index Profile index in the profiles list.
- name Profile name.
-
- Options:
-
- --index Used to disambiguate in case a profile has a name that is a number
- --name Used to disambiguate in case a profile has a name that is a number
-
- == CMD_HELP_PROFILE_DELETE ==
- Remarks:
-
- Deletes a server connection profile from the client's configuration.
- It works both with the profile index and the profile name.
- The 'cm ^profile ^list' command does not show profile names by default,
- check 'cm ^profile ^list --help' to check how to output profile's name.
-
- Example:
-
- cm ^profile ^delete 1
- (Removes the profile at index 1.)
-
- cm ^profile ^delete 192.168.0.2:8087_UPWorkingMode
- (Removes the profile with name '192.168.0.2:8087_UPWorkingMode'.)
-
- cm ^profile ^delete --name=12
- (Removes the profile with name '12'.)
-
- == CMD_DESCRIPTION_QUERY ==
- Executes SQL queries. Requires SQL storage.
-
- == CMD_USAGE_QUERY ==
- Usage:
-
- cm ^query <sql_command> [--^outputfile=<output_file>]
- [--^solveuser=<column_name>[,...]]
- [--^solvepath=<column_name>[,...]]
- [--^columnwidth=<value>] [--^nocolumnname]
- [--^columnseparator=<sep>] [--^repository=<name>]
-
- sql_command The sql query to be executed.
-
- Options:
-
- --^outputfile Writes the result in an output file.
- --^solveuser Sets the specified columns as username columns. The
- query interpreter will assume that data of these columns
- will be users, and will try to solve them.
- --^solvepath Sets the specified columns as itemid column. The query
- interpreter will try to solve item id to filesystem
- paths.
- --^columnwidth Specifies the width of each column to format the output.
- --^nocolumnname Does not print column name.
- --^columnseparator Uses char as column separator instead of a tab (\t).
- --^repository Repository to query.
-
- == CMD_HELP_QUERY ==
- Remarks:
-
- This command allows users to execute SQL queries in the server database.
-
- In order to write SQL queries, use these two pre-defined functions to manage
- users and paths:
- - '^SolveUser(<username>)' that resolves a username into Plastic SCM format.
- - '^SolvePath(<path>)' that resolves a disk path into an item id.
-
- Also, you can use options to show query results in a human readable form.
-
- You can use the options '--^solveuser=<column_name>' and
- '--^solvepath=<column_name>' to specify columns that query interpreter
- must convert to a legible text. You can specify more than one column name,
- comma separated.
-
- Examples:
-
- cm ^query "^SELECT * ^FROM ^revision" --^columnwidth=25 --^repository=reptest
- (Retrieves data from 'revision' table from repository 'reptest'.)
-
- cm ^query "^SELECT b.^sname ^as br_name, o.^dtimestamp ^as date ^from ^branch b, \
- ^object o, ^seid s ^where b.^iobjid=o.^iobjid ^and o.^fidowner=s.^iseidid ^and \
- s.^scode='^SolveUser(john)'" --^outputfile=query.txt
- (Outputs into a file the branches with owner 'john'.)
-
- cm ^query "^select r.^iobjid, r.^fiditem ^as path, s.^scode ^as username ^FROM \
- ^revision r, ^object o, ^seid s ^WHERE r.^iobjid=o.^iobjid ^and \
- o.^fidowner=s.^iseidid ^and o.^dtimestamp>04/25/2014" \
- --^solveuser=username --^solvepath=path --^repository=reptest@server2:9095
- (Retrieves selected data from selected repository.)
-
- cm ^query "^SELECT * ^FROM ^revision ^WHERE ^fiditem=^SolvePath(c:\mywkpath\info)"
- (Retrieves all revision data of path 'info'.)
-
- == CMD_DESCRIPTION_ATTRIBUTE_DELETE ==
- Deletes one or more attributes.
-
- == CMD_USAGE_ATTRIBUTE_DELETE ==
- Usage:
-
- cm ^attribute | ^att ^delete | ^rm <att_spec>[ ...]
-
- att_spec Attributes to delete. Use a whitespace to separate
- attributes.
- (Use 'cm ^help ^objectspec' to learn more about attribute
- specs.)
-
- == CMD_HELP_ATTRIBUTE_DELETE ==
- Remarks:
-
- This command removes one or more attributes.
-
- Examples:
-
- cm ^attribute ^delete ^att:status
- (Deletes the attribute 'status'.)
-
- cm ^att ^rm status ^att:integrated@reptest@server2:8084
- (Deletes the attributes 'status' and 'integrated'.)
-
- == CMD_DESCRIPTION_ATTRIBUTE_UNSET ==
- Unsets an object's attribute.
-
- == CMD_USAGE_ATTRIBUTE_UNSET ==
- Usage:
-
- cm ^attribute | ^att ^unset <att_spec> <object_spec>
-
- att_spec Attribute specification. (Use 'cm ^help ^objectspec' to
- learn more about attribute specs.)
- object_spec Specification of the object to remove the attribute
- from. Attributes can be set on: branches, changesets,
- shelvesets, labels, items, and revisions.
- (Use 'cm ^help ^objectspec' to learn more about specs.)
-
- == CMD_HELP_ATTRIBUTE_UNSET ==
- Remarks:
-
- The command unsets an attribute that was previously set on an object. It
- does not delete the attribute object itself.
-
- Examples:
-
- cm ^attribute ^unset ^att:status ^br:/main/SCM105
- (Removes attribute realization 'status' from branch 'main/SCM105'.)
-
- cm ^att ^unset ^att:integrated@reptest@localhost:8084 ^cs:25@reptest@localhost:8084
- (Removes attribute realization 'integrated' from changeset 25, all in
- repository 'reptest'.)
-
- == CMD_DESCRIPTION_ATTRIBUTE_RENAME ==
- Renames an attribute.
-
- == CMD_USAGE_ATTRIBUTE_RENAME ==
- Usage:
-
- cm ^attribute | ^att ^rename <att_spec> <new_name>
-
- att_spec Attribute to rename. (Use 'cm ^help ^objectspec' to learn
- more about attribute specs.)
- new_name New name for the attribute.
-
- == CMD_HELP_ATTRIBUTE_RENAME ==
- Remarks:
-
- This command renames an attribute.
-
- Examples:
-
- cm ^attribute ^rename ^att:status state
- (Renames the attribute 'status' to 'state'.)
-
- == CMD_DESCRIPTION_ATTRIBUTE_EDIT ==
- Edits the comment of an attribute.
-
- == CMD_USAGE_ATTRIBUTE_EDIT ==
- Usage:
-
- cm ^attribute | ^att ^edit <att_spec> <new_comment>
-
- att_spec Attribute to change its comment. (Use 'cm ^help ^objectspec'
- to learn more about attribute specs.)
- new_comment New comment for the attribute. You can also specify a
- default list of values for the attribute. See Remarks for
- more info.
-
- == CMD_HELP_ATTRIBUTE_EDIT ==
- Remarks:
-
- This command changes the comment of an attribute.
-
- To specify a default list of values for the attribute, you just need to
- include a line like the following in the attribute comment:
- 'default: value_one, "value two", value3, "Final value"'.
-
- Examples:
-
- cm ^attribute ^edit ^att:status "The status of a branch in the CI pipeline."
- (Edits the comment of the attribute 'status'.)
-
- cm ^attribute ^edit ^att:status "Status of a branch. default: open, resolved, reviewed"
- (Edits the comment of the attribute 'status'. And also specifies a list of
- values. So when you set the attribute 'status' to an object, you can select
- one of the following values: "open", "resolved", or "reviewed".)
-
- == CMD_DESCRIPTION_REPLICATE ==
- WARNING: This command is deprecated.
-
- Use 'cm ^pull' (equivalent to '^replicate') and 'cm ^push' (equivalent to
- '^replicate --^push').
-
- == CMD_USAGE_REPLICATE ==
-
- == CMD_HELP_REPLICATE ==
-
- == CMD_DESCRIPTION_PULL ==
- Pulls a branch from another repo.
-
- == CMD_USAGE_PULL ==
- Usage:
-
- cm ^pull <src_br_spec> <dst_rep_spec>
- [--^preview] [--^nodata] [TranslateOptions]
- [--^user=<usr_name> [--^password=<pwd>] | AuthOptions]
- (Direct server-to-server replication. Pulls a branch from a repository.)
-
- cm ^pull <dst_rep_spec> --^package=<pack_file> [AuthOptions]
- (Package based replication. Imports the package in the destination repository.)
-
- cm ^pull ^hydrate <dst_br_spec> [<src_rep_spec>]
- [--^user=<usr_name> [--^password=<pwd>] | AuthOptions]
- (Introduces the missing data for all the changesets of a branch previously
- replicated with '--^nodata'. If a repo to obtain the data is not specified,
- Plastic tries to use the "replication source" (origin of the replicated
- branch)).
-
- cm ^pull ^hydrate <dst_cs_spec> [<src_rep_spec>]
- [--^user=<usr_name> [--^password=<pwd>] | AuthOptions]
- (Introduces the missing data for a changeset previously replicated with
- '--^nodata'. If a repo to obtain the data is not specified, Plastic tries to
- use the "replication source").
-
- src_br_spec The branch to pull from a remote repository.
- (Use 'cm ^help ^objectspec' to learn more about branch specs.)
- dst_br_spec The branch to hydrate.
- (Use 'cm ^help ^objectspec' to learn more about branch specs.)
- dst_cs_spec The changeset to hydrate.
- (Use 'cm ^help ^objectspec' to learn more about changeset
- specs.)
- dst_rep_spec The destination repository.
- (Use 'cm ^help ^objectspec' to learn more about repository
- specs.)
- --^package Specifies the previously created package file to import
- for package based replication.
- Useful to move data between servers when there is no
- direct network connection.
- Refer to 'cm ^push' to create a package file.
-
- Options:
-
- --^preview Gives information about what changes will be pulled but
- no changes are actually performed. This option is useful
- to check the data that will be transferred before
- replicating changes.
- --^nodata Replicates the branch changes without replicating the
- data. This option is not allowed with package
- replication.
- TranslateOptions See the Translate options section for more information.
- --^user, --^password Credentials to use if the authentication mode is
- different in source and destination and there is not a
- profile to authenticate to destination.
- AuthOptions See the Authentication options section for more
- information.
-
- Translate options:
-
- --^trmode=(^copy|^name|^table --^trtable=<translation_table_file>)
- The source and destination repositories may use different authentication
- modes. The '--^trmode' option specifies how to translate the user names from
- the source to the destination. The '--^trmode' must be one of the following
- values:
- ^copy (Default). Means that the user identifiers will be just copied.
- ^name The user identifiers will be matched by name.
- ^table Uses a translation table specified in the option '--^trtable'
- (see below).
-
- --^trtable=<translation_table_file>
- If the translation mode is 'table', a translation table is a file
- containing lines in the form <oldname;newname> (one per line). When the
- branch is written to the destination repository, the objects created by
- a user identified by "oldname" in the source repository will be set
- to the user with "newname" on the destination.
-
- Authentication options:
-
- Authentication data can be specified using one of the two following modes:
-
- 1) Using authentication parameters: --^authmode=<mode> --^authdata=<data>
-
- --^authmode=(^NameWorkingMode|^LDAPWorkingMode|^ADWorkingMode|^UPWorkingMode)
- Examples:
- (^LDAPWorkingMode) --^authdata=::0:dave:fPBea2rPsQaagEW3pKNveA
- (^UPWorkingMode) --^authdata=dave:fPBea2rPsQaagEW3pKNveA==
-
- The '--^authdata' line is the content of the <^SecurityConfig> entry
- in the client.conf file and the profiles.conf file. The profiles.conf
- file can be easily generated from the Plastic GUI in the replication
- profiles tab under Preferences.
-
- If you are using ^UPWorkingMode, you can simply specify:
-
- --^authmode=^UPWorkingMode --^user=<user> --^password=<psw>
-
- 2) Authentication file where you may have a different file for each server
- you connect to, containing the credentials for that server.
-
- --^authfile=<authentication_file>
- The file contains 2 lines:
- Line 1) mode, as described in '--^authmode'
- Line 2) authentication data, as described in '--^authdata'
-
- == CMD_HELP_PULL ==
- Remarks:
-
- The '^pull' command is able to replicate branches (along with their
- changesets) between a source repository and a destination repository.
- The repositories can be located at different servers.
-
- There are two replication operations: '^push' and '^pull'.
-
- A '^pull' operation means that the replication operation will demand data
- from the source repository to be stored into the destination repository.
- The client will connect to the destination repository and, from that host,
- it will establish a connection to the source repository to retrieve the
- targeted data. During pull it is the destination server which will be
- connected to the source.
-
- Although in a typical distributed scenario a developer pushes data from his
- local server to the main server, the developer might want to pull the latest
- repository updates from the main server, too.
-
- Replication can resolve situations where concurrent changes have been made
- on the same branch on two replicated repositories:
-
- - Push: If you try to push your data to a repository having newer changes
- than those you are sending, the system will ask you to pull the latest
- changes, resolve the merge operation and, finally, try to push again.
-
- - Pull: Whenever you pull changesets from a remote branch, they will be
- correctly linked to their parent changesets. If the changeset you pulled
- is not a child of the last changeset in the branch, then a multi-headed
- scenario will appear. The branch will have more than one 'head', or last
- changeset on the branch. You will need to merge the two 'heads' before
- being able to push again.
-
- Pull can work in two modes:
-
- 1) Direct communication between servers: The destination server will fetch
- the data from the source server, automatically synchronizing data for
- the specified branch.
-
- 2) Import a previously generated package with push and the '--^package' option.
-
- Mode 1) requires the user running the command to be authenticated
- by the remote server, either using the default authentication in the
- client.conf file, or specifiying the '--^authmode' and '--^authdata' modifiers,
- or '--^authmode' and '--^user' and '--^password' if the authentication mode is
- ^UPWorkingMode.
-
- Mode 2) requires using a package file previously generated with the push
- command.
-
- Keep in mind that pull replication works in an indirect way. When executed,
- the command asks the destination repository to connect to the source and
- obtain the selected branch.
-
- However, this can be done directly by using the push command.
- This will make the command replicate the selected branch from source to
- destination.
-
- Examples:
-
- cm ^pull ^br:/main@project1@remoteserver:8084 projectx@myserver:8084
- (Pulls the 'main' branch from 'remoteserver' to 'myserver'. In this case,
- both servers are configured with the same authentication mode.)
-
- cm ^pull ^br:/main@project1@remoteserver:8084 projectx@myserver:8084 \
- --^authmode=^LDAPWorkingMode --^authdata=::0:dave:fPBea2rPsQaagEW3pKNveA
- (Pulls the same branch as before, but now the remote server is configured
- to authenticate users with Active Directory. For instance, I am connecting
- from a Linux machine to a Windows server configured to use Active Directory
- integrated mode. I will specify my Active Directory user and cyphered
- password and pass it as LDAP to the server.)
-
- cm ^pull ^br:/main@project1@remoteserver:8084 projectx@myserver:8084 \
- --^authmode=^UPWorkingMode --^user=dave --^password=mysecret
- (Pulls the same branch, but now users are authenticated on the remote
- server, taking advantage of the user/password database included in
- Plastic SCM.)
-
- cm ^pull ^br:/main@project1@remoteserver:8084 projectx@myserver:8084 --^nodata
- (Replicates the 'main' branch from 'remoteserver' to 'myserver' without data.)
-
- cm ^pull ^hydrate ^br:/main@projectx@myserver:8084 projectx@remoteserver:8084
- (Hydrates all the changesets in the 'main' branch obtaining the data from
- the remote server.)
-
- cm ^pull ^hydrate ^cs:122169@projectx@myserver:8084 projectx@remoteserver:8084
- (Hydrates changeset 122169 in 'myserver' obtaining the data from the remote
- server.)
-
- == CMD_DESCRIPTION_PUSH ==
- Pushes a branch to another repo.
-
- == CMD_USAGE_PUSH ==
- Usage:
-
- cm ^push <src_br_spec> <dst_rep_spec>
- [--^preview] [TranslateOptions]
- [--^user=<usr_name> [--^password=<pwd>] | AuthOptions]
- (Direct server-to-server replication. Pushes a branch from a repository.)
-
- cm ^push <src_br_spec> --^package=<pack_file> [AuthOptions]
- (Package based replication. Creates a replication package in the source
- server with the selected branch.)
-
- src_br_spec The branch to push to a remote repository.
- (Use 'cm ^help ^objectspec' to learn more about branch specs.)
- dst_rep_spec The destination repository.
- (Use 'cm ^help ^objectspec' to learn more about repository
- specs.)
- --^package Specifies path for exporting replication package for
- package based replication.
- Useful to move data between servers when there is no
- direct network connection.
-
- Options:
-
- --^preview Gives information about what changes will be pushed,
- but no changes are actually performed. This option is
- useful to check the data that will be transferred before
- replicating changes.
- TranslateOptions See the Translate options section for more information.
- --^user, --^password Credentials to use if the authentication mode is
- different in source and destination and there is not a
- profile to authenticate to destination.
- AuthOptions See the Authentication options section for more
- information.
-
- Translate options:
-
- --^trmode=(^copy|^name|^table --^trtable=<translation_table_file>)
- The source and destination repositories may use different authentication
- modes. The '--^trmode' option specifies how to translate the user names
- from the source to the destination. The '--^trmode' must be one of the
- following values:
- ^copy (Default). Means that the user identifiers will be just copied.
- ^name The user identifiers will be matched by name.
- ^table Uses a translation table specified in the option '--^trtable'
- (see below).
-
- --^trtable=<translation_table_file>
- If the translation mode is 'table', a translation table is a file
- containing lines in the form <oldname;newname> (one per line). When the
- branch is written to the destination repository, the objects created by
- a user identified by "oldname" in the source repository will be set
- to the user with "newname" on the destination.
-
- Authentication options:
-
- Authentication data can be specified using one of the two following modes:
-
- 1) Using authentication parameters: --^authmode=<mode> --^authdata=<data>
-
- --^authmode=(^NameWorkingMode|^LDAPWorkingMode|^ADWorkingMode|^UPWorkingMode)
- Examples:
- (^LDAPWorkingMode) --^authdata=::0:dave:fPBea2rPsQaagEW3pKNveA
- (^UPWorkingMode) --^authdata=dave:fPBea2rPsQaagEW3pKNveA==
-
- The '--^authdata' line is the content of the <^SecurityConfig> entry
- in the client.conf file and the profiles.conf file. The profiles.conf
- file can be easily generated from the Plastic GUI in the replication
- profiles tab under Preferences.
-
- If you are using ^UPWorkingMode, you can simply specify:
-
- --^authmode=^UPWorkingMode --^user=<user> --^password=<psw>
-
- 2) Authentication file where you may have a different file for each server
- you connect to, containing the credentials for that server.
-
- --^authfile=<authentication_file>
- The file contains 2 lines:
- Line 1) mode, as described in '--^authmode'
- Line 2) authentication data, as described in '--^authdata'
-
- == CMD_HELP_PUSH ==
- Remarks:
-
- The '^push' command is able to replicate branches (along with their
- changesets) between a source repository and a destination repository.
- The repositories can be located at different servers.
-
- There are two replication operations: '^push' and '^pull'.
-
- A '^push' operation means that the replication operation will send data
- from the source repository to the destination repository. In this case,
- the client will connect to the source repository, getting the data to
- replicate, and then it will send it to the destination repository. While
- the former (source) must have connectivity to the destination, the latter
- (destination) will not connect itself to the source.
-
- In a typical distributed scenario, a developer pushes data from his local
- server to the main server. Also, the developer might want to pull the latest
- repository updates from the main server, too.
-
- Replication can resolve situations where concurrent changes have
- been made on the same branch on two replicated repositories.
-
- - Push: If you try to push your data to a repository having newer changes
- than those you are sending, the system will ask you to pull the latest
- changes, resolve the merge operation and, finally, try to push again.
-
- - Pull: Whenever you pull changesets from a remote branch, they will be
- correctly linked to their parent changesets. If the changeset you pulled
- is not a child of the last changeset in the branch, then a multi-headed
- scenario will appear. The branch will have more than one 'head', or last
- changeset on the branch. You will need to merge the two 'heads' before
- being able to push again.
-
- Push can work in two modes:
-
- 1) Direct communication between servers: The origin server will send
- the data to the destination server, automatically synchronizing data
- for the specified branch.
-
- 2) Export package mode: The client will only connect to the source and
- generate a replication package obtaining both data and metadata for the
- specified branch. The '--^package' modifier will be used.
-
- Both modes require the user running the command to be authenticated
- by the server, either using the default authentication in the client.conf
- file, or specifiying the '--^authmode' and '--^authdata' modifiers.
-
- The ^push replication works in a direct way. When executed, the command
- will replicate the selected branch from source to destination, instead of
- asking the destination repository to connect to the source and obtain the
- selected branch (as the pull does).
-
- Examples:
-
- cm ^push ^br:/main@project1@myserver:8084 projectx@remoteserver:8084
- (Replicates the 'main' branch from 'myserver' to 'remoteserver'. In this case,
- both servers are configured with the same authentication mode.)
-
- cm ^push ^br:/main@project1@myserver:8084 projectx@remoteserver:8084 \
- --^authmode=^LDAPWorkingMode --^authdata=::0:dave:fPBea2rPsQaagEW3pKNveA
- (Replicates same branch as before, but now the remote server is configured
- to authenticate users with Active Directory. For instance, I am connecting
- from a Linux machine to a Windows server configured to use Active Directory
- integrated mode. I will specify my Active Directory user and cyphered
- password and pass it as LDAP to the server.)
-
- cm ^push ^br:/main@project1@myserver:8084 projectx@remoteserver:8084 \
- --^authmode=^UPWorkingMode --^user=dave --^password=mysecret
- (Replicates the same branch, but now users are authenticated on the remote
- server, taking advantage of the user/password database included in
- Plastic SCM.)
-
- == CMD_DESCRIPTION_CLONE ==
- Clones a remote repository.
-
- == CMD_USAGE_CLONE ==
- Usage:
-
- cm ^clone <src_rep_spec> [<dst_rep_spec> | <dst_repserver_spec>]
- [--^user=<usr_name> [--^password=<pwd>] | AuthOptions]
- [TranslateOptions]
- (Direct repository-to-repository clone.)
-
- cm ^clone <src_rep_spec> --^package=<pack_file>
- [--^user=<usr_name> [--^password=<pwd>] | AuthOptions]
- (Clones to an intermediate package, that can be imported later using a
- pull into the destination repository.)
-
- src_rep_spec Source repository of the clone operation.
- (Use 'cm ^help ^objectspec' to learn more about repository
- specs.)
- dst_rep_spec Destination repository of the clone operation. If it
- exists, it must be empty. If it does not exist, it will
- be created.
- If it is not specified, the command will use user's
- default repository server.
- (Use 'cm ^help ^objectspec' to learn more about repository
- specs.)
- dst_repserver_spec Destination repository server of the clone operation.
- If there is a repository with the same name as
- <src_rep_spec> in the destination repository server, it
- must be empty. If there is not, it will be created.
- If it is not specified, the command will use user's
- default repository server.
- (Use 'cm ^help ^objectspec' to learn more about repository
- server specs.)
-
- Options:
-
- --^user, --^password Credentials to use if the authentication mode is
- different in source and destination and there is not a
- profile to authenticate to destination.
- --^package Exports the specified repository to a package file,
- instead of a repository.
- Useful for moving data between servers when there is no
- direct network connection.
- The resulting package must be imported using the
- pull command.
- TranslateOptions See the Translate options section for more information.
- AuthOptions See the Authentication options section for more
- information.
-
- Translate options:
- --^trmode=(^copy|^name|^table --^trtable=<translation_table_file>)
- The source and destination repositories may use different authentication
- modes. The '--^trmode' option specifies how to translate the user names from
- the source to the destination. The '--^trmode' must be one of the following
- values:
- ^copy (Default.) Means that the user identifiers will be just copied.
- ^name The user identifiers will be matched by name.
- ^table Uses a translation table specified in the option '--^trtable'
- (see below).
-
- --^trtable=<translation_table_file>
- If the translation mode is 'table', a translation table is a file
- containing lines in the form <oldname;newname> (one per line). When the
- branch is written to the destination repository, the objects created by
- a user identified by "oldname" in the source repository will be set
- to the user with "newname" on the destination.
-
- Authentication options:
-
- Authentication data can be specified using one of the two following modes:
-
- 1) Using authentication parameters: --^authmode=<mode> --^authdata=<data>
-
- --^authmode=(^NameWorkingMode|^LDAPWorkingMode|^ADWorkingMode|^UPWorkingMode)
- Examples:
- (^LDAPWorkingMode) --^authdata=::0:dave:fPBea2rPsQaagEW3pKNveA
- (^UPWorkingMode) --^authdata=dave:fPBea2rPsQaagEW3pKNveA==
-
- The '--^authdata' line is the content of the <^SecurityConfig> entry
- in the client.conf file and the profiles.conf file. The profiles.conf
- file can be easily generated from the Plastic GUI in the connection
- profiles tab under Preferences.
-
- If you are using ^UPWorkingMode, you can simply specify:
-
- --^authmode=^UPWorkingMode --^user=<user> --^password=<pwd>
-
- 2) Authentication file where you may have a different file for each server
- you connect to, containing the credentials for that server.
-
- --^authfile=<authentication_file>
- The file contains 2 lines:
- Line 1) mode, as described in '--^authmode'
- Line 2) authentication data, as described in '--^authdata'
-
- == CMD_HELP_CLONE ==
- Remarks:
-
- The clone command can replicate branches (along with their changesets,
- labels, attributes, reviews, and so on) from a source repository to a
- destination repository. The repositories can be located at different servers.
-
- The destination repository can be created beforehand, but if it contains
- previous data, the clone operation will fail.
-
- The clone operation does NOT clone repository submodules, nor repositories
- under a Xlink.
-
- Examples:
-
- cm ^clone awesomeProject@tardis@cloud
- (Clones 'awesomeProject' repository from 'tardis@cloud' organization into
- a local repository with the same name.)
-
- cm ^clone repo@server.home:9095 repo-local
- (Clones 'repo' from 'server.home:9095' into 'repo-local' at user's default
- repository server.)
-
- cm ^clone project@192.168.111.130:8084 ^repserver:192.168.111.200:9095
- (Clones 'project' repository from '192.168.111.130:8084' into
- 'project@192.168.111.200:9095'.)
-
- cm ^clone project@ldapserver:8084 --authfile=credentials.txt \
- --^trmode=table --^trtable=table.txt
- (Clones 'project' repository from 'ldapserver:8084' using an authentication
- file against the remote repository, and translating users following the
- specified translation table.)
-
- cm ^clone project@server.home:9095 --^package=project.plasticpkg
- cm ^repository ^create project@mordor.home:8084
- cm ^pull --^package=project.plasticpkg project@mordor.home:8084
- (Clones 'project' repository from 'server.home:9095' into the package
- 'project.plasticpkg', which is later imported through a pull into
- the 'project' repository at 'mordor.home:8084'.)
-
- == CMD_DESCRIPTION_REVERT ==
- Reverts an item to a previous revision.
-
- == CMD_USAGE_REVERT ==
- Usage:
-
- cm ^revert <revspec>
-
- revspec Specification of the changeset that contains the
- revision which content will be loaded in the workspace.
- (Use 'cm ^help ^objectspec' to learn more about revision
- specs.)
-
- == CMD_HELP_REVERT ==
- Remarks:
-
- The item must be checked in.
-
- Examples:
-
- cm ^revert dir#^cs:0
- cm ^revert C:\mywks\dir\file1.txt#23456
-
- == CMD_DESCRIPTION_REVISION_HISTORY ==
- Displays the history of a file or directory.
-
- == CMD_USAGE_REVISION_HISTORY ==
- Usage:
-
- cm ^history | ^hist <item_path>[ ...] [--^long | --^format=<str_format>]
- [--^symlink] [--^xml[=<output_file>]] [--^encoding=<name>]
- [--^moveddeleted]
-
- item_path Item's path. Use a whitespace to separate paths. Use
- double quotes (" ") to specify paths containing spaces.
- Paths can be server path revisions too.
- (Use 'cm ^help ^objectspec' to learn more about specs.)
-
- Options:
-
- --^long Shows additional information.
- --^format Retrieves the output message in a specific format. See
- Remarks for more info. This option cannnot be combined
- with '--^xml'.
- --^symlink Applies the history operation to the symlink and not to
- the target.
- --^xml Prints the output in XML format to the standard output.
- It is possible to specify an output file. This option
- cannot be combined with '--^format'.
- --^encoding Used with the '--^xml' option, specifies the encoding to
- use in the XML output, i.e.: utf-8.
- See the MSDN documentation at
- http://msdn.microsoft.com/en-us/library/system.text.encoding.aspx
- to get the table of supported encodings and its format,
- (at the end of the page, in the "Name" column).
- --^moveddeleted Include move and remove operations in the history.
- --^limit Displays the N most recent revisions for the specified items,
- sorted by date and changeset id. If a negative number is supplied,
- it will return an empty list. If a number higher than the number
- of revisions is supplied, it will return all the available revisions
- regarding that item.
-
- == CMD_HELP_REVISION_HISTORY ==
- Remarks:
-
- This command shows a list of revisions for a given item, and label, branch,
- and comment info for each revision.
-
- Output format parameters (--^format option):
- This command accepts a format string to show the output.
- The output parameters of this command are the following:
- {0} | {^date} Date.
- {1} | {^changesetid} Changeset number.
- {2} | {^branch} Branch.
- {4} | {^comment} Comment.
- {5} | {^owner} Owner.
- {6} | {^id} Revision id.
- {7} | {^repository} Repository.
- {8} | {^server} Server.
- {9} | {^repspec} Repository spec.
- {10}| {^datastatus} Availability of the revision data.
- {11}| {^path} Path or spec passed as <item_path>.
- {12}| {^itemid} Item Id.
- {13}| {^size} Size.
- {14}| {^hash} Hash code.
- {^tab} Inserts a tab space.
- {^newline} Inserts a new line.
-
- Examples:
-
- cm ^history file1.txt "file 2.txt"
-
- cm ^hist c:\workspace --^long
- (Displays all information.)
-
- cm ^history link --^symlink
- (Applies the history operation to the symlink file and not to the target.)
-
- cm ^history ^serverpath:/src/foo/bar.c#^br:/main/task001@myserver
- (Retrieves the revision history from a server path in a given branch.)
-
- cm ^history bar.c, foo.c --long --limit=2
- (Retrieves the 2 last revisions for the bar.c and foo.c items.)
-
- == CMD_DESCRIPTION_REVISION_TREE ==
- Shows the revision tree for an item.
-
- == CMD_USAGE_REVISION_TREE ==
- Usage:
-
- cm ^tree <path> [--^symlink]
-
- path Item path.
-
- Options:
-
- --^symlink Applies the operation to the link file and not to the target.
-
- == CMD_HELP_REVISION_TREE ==
- Examples:
-
- cm ^tree fichero1.txt
- cm ^tree c:\workspace
- cm ^tree link --^symlink
- (Applies the operation to the symlink file and not to the target.)
-
- == CMD_DESCRIPTION_RM ==
- Allows the user to delete files and directories.
-
- == CMD_USAGE_RM ==
- Usage:
-
- cm ^remove | ^rm <command> [options]
-
- Commands:
-
- ^controlled (optional)
- ^private
-
- To get more information about each command run:
- cm ^remove <command> --^usage
- cm ^remove <command> --^help
-
- == CMD_HELP_RM ==
- Examples:
-
- cm ^remove \path\controlled_file.txt
- cm ^remove ^private \path\private_file.txt
-
- == CMD_DESCRIPTION_RM_CONTROLLED ==
- Deletes a file or directory from version control.
-
- == CMD_USAGE_RM_CONTROLLED ==
- Usage:
-
- cm ^remove | ^rm <item_path>[ ...] [--^format=<str_format>]
- [--^errorformat=<str_format>] [--^nodisk]
-
- item_path Items path to remove. Use double quotes (" ") to specify
- paths containing spaces. Use a whitespace to separate
- paths.
-
- Options:
-
- --^format Retrieves the output progress message in a specific
- format. See the Examples for more information.
- --^errorformat Retrieves the error message (if any) in a specific
- format. See the Examples for more information.
- --^nodisk Removes from version control, but keeps the item on
- disk.
-
- == CMD_HELP_RM_CONTROLLED ==
- Remarks:
-
- Items are deleted from disk. Removed items are removed from the parent
- directory in the source code control.
-
- Requirements:
- - The item must be under source code control.
-
- Reading input from stdin:
-
- The '^remove' command can read paths from stdin. To do this, pass a single
- dash "-".
- Example: cm ^remove -
-
- Paths will be read until an empty line is entered.
- This allows you to use pipe to specify which files to remove.
- Example:
- dir /S /B *.c | cm ^remove -
- (In Windows, removes all .c files in the workspace.)
-
- Examples:
-
- cm ^remove src
- (Removes 'src'. If src is a directory, this is the same as
- 'cm ^remove -^R src'.)
-
- cm ^remove c:\workspace\file.txt --^format="{0} - REMOVED" \
- --^errorformat="{0} - ERROR REMOVING"
- (Removes 'file.txt' from version control and from disk, writing
- "c:\workspace\file.txt - ^REMOVED" if the operation succeeded, or
- "c:\workspace\file.txt - ^ERROR ^REMOVING" otherwise.)
-
- cm ^remove c:\workspace\file.txt --^nodisk
- (Removes 'file.txt' from version control, but keeps it on disk.)
-
- == CMD_DESCRIPTION_RM_PRIVATE ==
- Deletes a private file or directory.
-
- Warning: files deleted using the command are permanently erased, and are not
- recoverable. It is recommended that you use the '--^dry-run' option to check
- which files will be affected by the command.
-
- == CMD_USAGE_RM_PRIVATE ==
- Usage:
-
- cm ^remove | ^rm ^private <path>[ ...] [-^R | -^r | --^recursive] [--^ignored]
- [--^verbose] [--^dry-run]
-
- path Path of the files or directories to remove. Use double
- quotes (" ") to specify paths containing spaces. Use a
- whitespace to separate paths.
-
- Options:
-
- --^r Recursively deletes private files from within controlled
- directories.
- --^ignored Deletes also ignored and cloaked files and directories.
- --^verbose Prints all affected paths.
- --^dry-run Runs the command without making any changes on disk.
-
- == CMD_HELP_RM_PRIVATE ==
- Remarks:
-
- If the path is a private file or directory, it will be deleted from disk.
- If the path is a controlled file, the command fails.
- If the path is a controlled directory, the command fails unless you
- specify the '-^r' option, in which case it will delete all private files and
- directories below the specified directory.
-
- Examples:
-
- cm ^remove ^private private_directory
- (Deletes 'private_directory'.)
-
- cm ^remove ^private c:\workspace\controlled_directory
- (Fails, because 'controlled_directory' is not private.)
-
- cm ^remove ^private -^r c:\workspace\controlled_directory
- (Deletes all private files and directories below 'controlled_directory'.)
-
- cm ^rm ^private --^dry-run --^verbose c:\workspace\controlled_directory -^r
- (Shows all of the paths affected by the deletion of private files below
- 'controlled_directory' without actually deleting anything.)
-
- cm ^rm ^private --^verbose c:\workspace\controlled_directory -^r
- (Shows all of the paths affected by the deletion of private files below
- 'controlled_directory', performing the delete.)
-
- == CMD_DESCRIPTION_TRIGGER_DELETE ==
- Deletes a trigger.
-
- == CMD_USAGE_TRIGGER_DELETE ==
- Usage:
-
- cm ^trigger | ^tr ^delete | ^rm <subtype-type> <position_number>
- [--^server=<repserverspec>]
-
- subtype-type Trigger execution and trigger operation.
- (Use 'cm ^showtriggertypes' to see a list of trigger
- types.)
- position_number Position assigned to the trigger when it was created.
-
- Options:
-
- --^server Deletes the trigger on the specified server.
- If no server is specified, executes the command on the
- one configured on the client.
-
- == CMD_HELP_TRIGGER_DELETE ==
- Examples:
-
- cm ^trigger ^delete ^after-setselector 4
- cm ^tr ^rm ^after-setselector 4
-
- == CMD_DESCRIPTION_ATTRIBUTE_SET ==
- Sets an attribute on a given object.
-
- == CMD_USAGE_ATTRIBUTE_SET ==
- Usage:
-
- cm ^attribute | ^att ^set <att_spec> <object_spec> <att_value>
-
- att_spec Attribute specification. (Use 'cm ^help ^objectspec' to
- learn more about attribute specs.)
- object_spec Specification of the object to set the attribute on.
- Attributes can be set on: branches, changesets,
- shelvesets, labels, items, and revisions.
- (Use 'cm ^help ^objectspec' to learn more about specs.)
- att_value The attribute value to set to the object.
-
- == CMD_HELP_ATTRIBUTE_SET ==
- Remarks:
-
- An attribute can be set on an object to save additional information for
- this object.
- Attributes can be set on the following objects: branches, changesets,
- shelvesets, labels, items, and revisions.
-
- Examples:
-
- cm ^attribute ^set ^att:status ^br:/main/SCM105 open
- (Sets attribute 'status' to branch 'SCM105' with value 'open'.)
-
- cm ^att ^set ^att:integrated@reptest@server2:8084 ^lb:LB008@reptest@server2:8084 yes
- (Sets attribute 'integrated' to label 'LB008' in repository 'reptest' with
- value 'yes'.)
-
- == CMD_DESCRIPTION_SETOWNER ==
- Sets the owner of an object.
-
- == CMD_USAGE_SETOWNER ==
- Usage:
-
- cm ^setowner | ^sto --^user=<usr_name> | --^group=<group> <object_spec>
-
- --^user User name. New owner of the object.
- --^group Group name. New owner of the object.
- object_spec Specification of the object to set the new owner on.
- The owner can be set on the following objects:
- repository server, repository, branch, changeset,
- label, item, revision and attribute.
- (Use 'cm ^help ^objectspec' to learn more about specs.)
-
- == CMD_HELP_SETOWNER ==
- Remarks:
-
- The owner of an object can be a user or a group.
-
- The owner can be set on the following objects: repository server,
- repository, branch, changeset, label, item, revision, and attribute.
-
- Examples:
-
- cm ^setowner --^user=john ^repserver:localhost:8084
- (Sets 'john' as repository server owner.)
-
- cm ^sto --^group=development ^rep:mainRep@PlasticServer:8084
- (Sets 'development' group as owner of 'mainRep' repository.)
-
- == CMD_DESCRIPTION_SETSELECTOR ==
- Sets the selector to a workspace.
-
- == CMD_USAGE_SETSELECTOR ==
- This command is deprecated. It is still present for backwards compatibility
- but selectors were largely deprecated in Plastic SCM 4.0. Selectors still
- exist to specify the working branch or changeset, but the old rules to
- filter paths are no longer supported.
-
- Usage:
- cm ^setselector | ^sts [--^file=<selector_file>] [--^ignorechanges]
- [--^forcedetailedprogress] [<wk_path> | <wk_spec>]
-
- Options:
-
- --^file File to load a selector from.
- --^ignorechanges Ignores the pending changes warning message that is
- shown if there are pending changes detected when
- updating the workspace.
- --^forcedetailedprogress Forces detailed progress even when standard output
- is redirected.
- wk_path Path of the workspace to set the selector.
- wk_spec Workspace specification. (Use 'cm ^help ^objectspec'
- to learn more about workspace specs.)
-
- == CMD_HELP_SETSELECTOR ==
- Remarks:
-
- This command sets the selector of a workspace.
-
- A workspace needs information to load revisions from the repository.
- To get this information, Plastic SCM uses a selector.
-
- Using a selector, it is possible to load revisions from a given branch,
- label, or changeset.
-
- If a file to load the selector is not specified, the default Operating
- System editor will be executed.
-
- Sample selector:
-
- ^repository "^default" // working repository
- ^path "/" // rules will be applied to the root directory
- ^branch "/^main" // obtain latest revisions from ^br:/^main
- ^checkout "/^main" // place checkouts on branch ^br:/^main
-
- Examples:
-
- cm ^sts
- (Opens the current selector file to be applied.)
-
- cm ^sts ^wk:workspace_projA@reptest
- (Opens the specified selector file to be applied.)
-
- cm ^setselector --^file=c:\selectors\sel.xml
- (Sets the specified selector file in the current workspace.)
-
- cm ^setselector --^file=c:\selectors\sel.xml ^wk:MyWorkspace
- (Sets the specified selector file in the selected workspace.)
-
- == CMD_DESCRIPTION_SHELVE ==
- Shelves the contents of checked-out items.
-
- == CMD_USAGE_SHELVE ==
- This command is deprecated. Use 'cm ^shelveset' instead.
-
- Usage:
-
- cm ^shelve [<item_path>+] [--^all] [--^dependencies]
- [-^c=str_comment | -^commentsfile=<comments_file>]
- [--^encoding=name] [--^comparisonmethod=comp_method]
- (Shelves the contents.)
-
- cm ^shelve --^apply=<sh_spec> [--^mount]
- (Applies a stored shelveset.)
-
- --^apply Restores the shelved contents of the specified shelveset.
- Shelve specification: check 'cm ^help ^objectspec'.
-
- cm ^shelve --^delete=<sh_spec>
- (Removes a stored shelveset.)
-
- --^delete Removes the specified shelveset.
- Shelveset specification: check 'cm ^help ^objectspec'.
-
- Options:
-
- item_path Items to be shelved, separated by spaces. Quotes (") can
- be used to specify paths containing spaces.
- --^all The items changed, moved and deleted locally, on the
- given paths, will also be included.
- --^dependencies Includes local change dependencies in the items to
- shelve.
- -^c Applies the specified comment to the created shelveset.
- -^commentsfile Applies the comment in the specified file to the created
- shelveset.
- --^encoding Specifies the output encoding, i.e.: utf-8.
- See the MSDN documentation at
- http://msdn.microsoft.com/en-us/library/system.text.encoding.aspx
- to get the table of supported encodings and its format,
- (at the end of the page, in the "Name" column).
- --^comparisonmethod Sets the comparison method. See remarks for more info.
- --^mount The mount point for the given repository.
-
- == CMD_HELP_SHELVE ==
-
- Remarks:
-
- If neither <item_path> nor any option is specified, the shelve will involve
- all the pending changes in the workspace.
-
- The shelve operation is always applied recursively from the given path.
-
- Requirements to shelve an item:
- - The item must be under source code control.
- - The item must be checked out or changed (--^all option must be used).
-
- Comparison methods:
- ^ignoreeol Ignores end of line differences.
- ^ignorewhitespaces Ignores whitespace differences.
- ^ignoreeolandwhitespaces Ignores end of line and whitespace differences.
- ^recognizeall Detects end of line and whitespace differences.
-
- Set the PLASTICEDITOR environment variable to specify an editor for
- entering comments. If the PLASTICEDITOR environment variable is set, and
- the comment is empty, the editor will be automatically launched to allow
- you to specify the comment.
-
- Examples:
-
- cm ^shelve -^c="my comment"
- (Shelves all the pending changes in the current workspace including a
- comment.)
-
- cm ^shelve file1.txt "file 2.txt" -^commentsfile=commentshelve.txt
- (Shelves the selected pending changes and applies the comment in the
- commentshelve.txt file.)
-
- cm ^shelve --^apply=^sh:3
- (Applies a stored shelveset.)
-
- cm ^shelve --^delete=^sh:3
- (Removes a stored shelveset.)
-
- cm ^status --^short --^changelist=pending_to_review | cm ^shelve -
- (Shelves client changelist.
- The command above lists the paths in the changelist named
- 'pending_to_review' and the path list is redirected to the input of the
- shelve command.)
-
- == CMD_DESCRIPTION_SHELVESET ==
- Allows the user to manage shelvesets.
-
- == CMD_USAGE_SHELVESET ==
- Usage:
-
- cm ^shelveset <command> [options]
-
- Commands:
-
- ^create | ^mk
- ^delete | ^rm
- ^apply
-
- To get more information about each command run:
- cm ^shelveset <command> --^usage
- cm ^shelveset <command> --^help
-
- == CMD_HELP_SHELVESET ==
- Examples:
-
- cm ^shelveset ^create -^c="my comment"
- cm ^shelveset ^delete ^sh:3
- cm ^shelve ^apply ^sh:3
-
- == CMD_DESCRIPTION_SHELVESET_CREATE ==
- Shelves pending changes.
-
- == CMD_USAGE_SHELVESET_CREATE ==
- Usage:
-
- cm ^shelveset ^create | ^mk [<item_path>[ ...]] [--^all] [--^dependencies]
- [-^c=<str_comment> | -^commentsfile=<comments_file>]
-
- Options:
-
- item_path Items to shelve. Use a whitespace to separate user names.
- Use double quotes (" ") to specify paths containing
- spaces.
- --^all The items changed, moved, and deleted locally, on the
- given paths, will also be included.
- --^dependencies Includes local change dependencies into the items to
- shelve.
- -^c Applies the specified comment to the created shelve.
- -^commentsfile Applies the comment in the specified file to the created
- shelve.
-
- == CMD_HELP_SHELVESET_CREATE ==
- The '^shelveset ^create' command stores the contents of checked out items inside the
- repository. This way the contents are protected without the need to
- checkin the files.
-
- Remarks:
-
- If neither <item_path> nor any option is specified, the shelveset will
- include all the pending changes in the workspace.
-
- The '^shelveset ^create' operation is always applied recursively from the
- given path.
-
- Requirements to shelve an item:
- - The item must be under source code control.
- - The item must be checked out or changed ('--^all' option must be used).
-
- Set the PLASTICEDITOR environment variable to specify an editor for
- entering comments. If the PLASTICEDITOR environment variable is set, and
- the comment is empty, the editor will be automatically launched to allow
- you to specify the comment.
-
- Examples:
-
- cm ^shelveset ^create -^c="my comment"
- (Shelves all the pending changes in the current workspace including a
- comment.)
-
- cm ^shelveset file1.txt "file 2.txt" -^commentsfile=commentshelve.txt
- (Shelves the selected pending changes and applies the comment in the
- 'commentshelve.txt' file. Note, '^create' is the default subcommand.)
-
- cm ^status --^short --^changelist=pending_to_review | cm ^shelveset -
- (Shelves client changelist.
- The command above lists the paths in the changelist named
- 'pending_to_review' and the path list is redirected to the input of the
- '^shelveset' command.)
-
- == CMD_DESCRIPTION_SHELVESET_DELETE ==
- Deletes a shelveset.
-
- == CMD_USAGE_SHELVESET_DELETE ==
- Usage:
-
- cm ^shelveset ^delete | ^rm <sh_spec>
-
- sh_spec Shelveset specification. (Use 'cm ^help ^objectspec' to
- learn more about shelveset specs.)
-
- == CMD_HELP_SHELVESET_DELETE ==
- The '^shelveset ^delete' command deletes a shelveset.
-
- Examples:
-
- cm ^shelveset ^delete ^sh:3
- (Removes a stored shelveset.)
-
- == CMD_DESCRIPTION_SHELVESET_APPLY ==
- Applies a stored shelveset.
-
- == CMD_USAGE_SHELVESET_APPLY ==
- Usage:
-
- cm ^shelveset ^apply <sh_spec> [<change_path>[ ...]] [--^preview]
- [--^mount] [--^encoding=<name>]
- [--^comparisonmethod=(^ignoreeol | ^ignorewhitespaces| \
- ^ignoreeolandwhitespaces | ^recognizeall)]
-
- sh_spec Shelveset specification. (Use 'cm ^help ^objectspec' to
- learn more about shelveset specs.)
- change_path The change path(s) of the shelve to apply. It's a
- server path, the one printed by the --preview option.
- When no path is set, all changes will be applied.
-
- Options:
-
- --^preview Prints the changes to apply on the workspace without
- applying them
- --^mount The mount point for the given repository.
- --^encoding Specifies the output encoding, i.e.: utf-8.
- See the MSDN documentation at
- http://msdn.microsoft.com/en-us/library/system.text.encoding.aspx
- to get the table of supported encodings and its format,
- (at the end of the page, in the "Name" column).
- --^comparisonmethod Sets the comparison method. See Remarks for more info.
-
- == CMD_HELP_SHELVESET_APPLY ==
- The '^shelveset ^apply' command restores the contents of a stored shelveset.
-
- Remarks:
-
- Comparison methods:
- ^ignoreeol Ignores end of line differences.
- ^ignorewhitespaces Ignores whitespace differences.
- ^ignoreeolandwhitespaces Ignores end of line and whitespace differences.
- ^recognizeall Detects end of line and whitespace differences.
-
- Examples:
-
- cm ^shelveset ^apply ^sh:3
- (Applies a stored shelve.)
-
- cm ^shelveset ^apply ^sh:3 /src/foo.c
- (Applies only the /src/foo.c change stored on the shelve.)
-
- == CMD_DESCRIPTION_SHOW_FIND_OBJECTS ==
- Lists objects and attributes.
-
- == CMD_USAGE_SHOW_FIND_OBJECTS ==
- Usage:
-
- cm ^showfindobjects
-
- == CMD_HELP_SHOW_FIND_OBJECTS ==
- Available objects and attributes:
-
- ^attribute:
- You can find attributes by filtering using the following fields:
-
- ^type : string.
-
- Example:
- cm ^find ^attribute "^where ^type = 'status'"
- (Finds all attributes of type 'status'.)
-
- ^value : string.
- ^date : date.
- Check "date constants" for more info in this guide.
-
- Example:
- cm ^find ^attribute "^where ^date > '^this ^week'"
- (Finds all attributes applied during the current week.)
-
- ^owner : user.
- Admits special user '^me'.
-
- Example:
- cm ^find ^attribute "^where ^value = 'resolved' ^and ^owner = '^me'"
- (Finds all attributes with value 'resolved' applied by me.)
-
- ^GUID : Global Unique Identifier.
- Hexadecimal id in the format xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.
- ^comment : string.
- ^srcobj : object spec: item path, branch, changeset, revision, or label.
- Use 'cm ^help ^objectspec' to learn how to specify these objects.
-
- Examples:
- cm ^find ^attribute "^where ^srcobj = '^item:readme.txt'"
- (Finds the attributes applied to the item 'readme.txt'.)
-
- cm ^find ^attribute "^where ^srcobj = '^br:/main/scm23343'"
- (Finds the attributes applied to the branch scm23343.)
-
- cm ^find ^attribute "^where ^srcobj = '^rev:readme.txt#^br:/main/task002'"
- (Finds the attributes applied to the specified revision.)
-
- cm ^find ^attribute "^where ^srcobj = '^rev:^revid:1126'"
- (Finds the attributes applied to the specified revision id.)
-
- ^ID : integer.
-
- ^attributetype:
- You can find attribute types by filtering using the following fields:
-
- ^name : string.
-
- Example:
- cm ^find ^attributetype "^where ^name ^like 'st%'"
- (Finds all attribute where name starts with 'st'.)
-
- ^value : string.
- ^date : date.
- Check "date constants" for more info in this guide.
-
- Example:
- cm ^find ^attribute "^where ^date > '^today'"
- (Finds all attributes applied today.)
-
- ^owner : user.
- Admits special user '^me'.
- ^GUID : Global Unique Identifier.
- Hexadecimal id in the format xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.
- ^comment : string.
-
- Example:
- cm ^find ^attributetype "^where ^comment != ''" --^xml
- (Finds all attribute types that have a comment and prints the
- output in XML format to the standard output.)
-
- ^source : object spec: item path, branch, changeset or label.
- Use 'cm ^help ^objectspec' to learn how to specify these objects.
-
- Example:
-
- cm ^find ^attributetype "^where ^source = '^item:readme.txt'"
- (Finds all attribute types in item 'readme.txt'.)
-
- cm ^find ^attributetype "^where ^source = '^cs:30'"
- (Finds all attribute types in changeset '30'.)
-
- cm ^find ^attributetype "^where ^source = '^lb:v0.14.1'"
- (Finds all attribute types in label 'v0.14.1'.)
-
- ^ID : integer.
-
- Replication field. Check "replication related fields" below.
- ^ReplLogId
- ^ReplSrcDate
- ^ReplSrcId
- ^ReplSrcRepository
- ^ReplSrcServer
-
- ^branch:
- You can find branches by filtering using the following fields:
-
- ^name : string.
-
- Example:
- cm ^find ^branch "^where ^name ^like 'scm23%'"
- (Finds branches which name starts with 'scm23'.)
-
- ^date : date.
- Check "date constants" for more info in this guide.
-
- Example:
- cm ^find ^branch "^where ^date > '^one ^week ^ago'"
- (Finds branches created during the last week.)
-
- ^changesets : date (of the changesets in the branch).
- Check "date constants" for more info in this guide.
-
- Example:
- cm ^find ^branch "^where ^changesets >= '^today'"
- (Finds branches with changesets created today.)
-
- ^attribute : string.
- ^attrvalue : string.
-
- Example:
- cm ^find ^branch "^where ^attribute = 'status' ^and ^attrvalue = 'failed'"
- (Finds branches that have the attribute 'status' and which
- value is 'failed'.)
-
- ^owner : user.
- Admits special user '^me'.
- ^parent : branch spec.
- Use 'cm ^help ^objectspec' to learn how to specify this object.
-
- Example:
- cm ^find ^branch "^where ^owner != '^me' ^and ^parent != '^br:/main'"
- (Finds branches created by other than me and which parent
- branch is not '/main'.)
-
- ^comment : string.
- ^GUID : Global Unique Identifier.
- Hexadecimal id in the format xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.
-
- ^ID : integer.
-
- Example:
- cm ^find ^branch "^where ^id = 2029607"
- (Finds the branch which id is 2029607.)
-
- You can use the '^order ^by' clause with this object. Specifically, you can short
- by using the following fields:
- ^date
- ^branchname
-
- Replication fields. Check "replication related fields" below.
- ^ReplLogId
- ^ReplSrcDate
- ^ReplSrcId
- ^ReplSrcRepository
- ^ReplSrcServer
-
- ^changeset:
- You can find changesets by filtering using the following fields:
-
- ^branch : branch spec.
- Use 'cm ^help ^objectspec' to learn how to specify this
- object.
-
- Example:
- cm ^find ^changeset "^where ^branch = '/main/scm23119'"
- (Finds all changesets in branch 'scm23119'.)
-
- ^changesetid : integer.
- ^attribute : string.
-
- Example:
- cm ^find ^changeset "^where ^attribute = 'status'"
- (Finds the changesets with the attribute 'status'.)
-
- ^attrvalue : string.
- ^date : date.
- Check "date constants" for more info in this guide.
- ^owner : user.
- Admits special user '^me'.
-
- Example:
- cm ^find ^changeset "^where ^date >= '6/8/2018' ^and ^owner != '^me'"
- (Finds all changesets with creation date equal or
- greater than 6/8/2018 and created by others than me.)
-
- ^GUID : Global Unique Identifier.
- Hexadecimal id in the format xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.
-
- Example:
- cm ^find ^changeset "^where ^guid = '1b30674f-14cc-4fd7-962b-676c8a6f5cb6'"
- (Finds the changeset with the specified guid.)
-
- ^comment : string.
-
- Example:
- cm ^find ^changeset "^where ^comment = ''"
- (Finds the changesets with no comments.)
-
- ^onlywithrevisions : boolean.
- To filter whether a cset has revisions or not.
-
- Example:
- cm ^find ^changeset "^where ^onlywithrevisions = 'false'"
- (Finds changesets with no revisions.)
-
- ^returnparent : boolean.
- A way to return the parent of a cset. Good for scripting.
-
- Example:
- cm ^find ^changeset "^where ^changesetid = 29 ^and ^returnparent = 'true'"
- (Finds the parent of changeset 29.)
-
- ^parent : changeset id (integer).
-
- Example:
- cm ^find ^changeset "^where ^parent = 548"
- (Finds all changesets which parent is cset 548.)
-
- ^ID : integer.
-
- You can use the '^order ^by' clause with this object. Specifically, you can sort
- by using the following fields:
- ^date
- ^changesetid
-
- Replication fields. Check "replication related fields" below.
- ^ReplLogId
- ^ReplSrcDate
- ^ReplSrcId
- ^ReplSrcRepository
- ^ReplSrcServer
-
- ^label:
- You can find labels by filtering using the following fields:
-
- ^name : string.
-
- Example:
- cm ^find ^label "^where ^name ^like '7.0.16.%'"
- (Finds the labels with a name that starts with '7.0.16.'.)
-
- ^attribute : string.
- ^attrvalue : string.
- ^date : date.
- Check "date constants" for more info in this guide.
-
- Example:
- cm ^find ^label "^where ^date >= '^this ^month' ^and \
- ^attribute = 'publish-status' ^and ^attrvalue != 'PUBLISHED'"
- (Finds the labels created this month with an attribute 'publish-status'
- set to a value other than 'PUBLISHED'.)
-
- ^owner : user.
- Admits special user '^me'.
- ^GUID : Global Unique Identifier.
- Hexadecimal id in the format xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.
- ^branch : branch spec.
- Use 'cm ^help ^objectspec' to learn how to specify this object.
-
- Example:
- cm ^find ^label "^where ^branch = '/main'"
- (Finds all labels applied to the main branch.)
-
- ^branchid : integer.
- ^changeset : changeset id (integer).
-
- Example:
- cm ^find ^label "^where ^changeset = 111733"
- (Finds the labels applied to changeset 111733.)
-
- ^comment : string.
- ^ID : integer.
-
- You can use the '^order ^by' clause with this object. Specifically, you can sort
- by using the following fields:
- ^date
- ^labelname
-
- Replication fields. Check "replication related fields" below.
- ^ReplLogId
- ^ReplSrcDate
- ^ReplSrcId
- ^ReplSrcRepository
- ^ReplSrcServer
-
- ^merge:
- You can find merges by filtering using the following fields:
-
- ^srcbranch : branch spec.
- Use 'cm ^help ^objectspec' to learn how to specify this object.
-
- Example:
- cm ^find ^merge "^where ^srcbranch = '^br:/main'"
- (Finds merges from the main branch.)
-
- ^srcchangeset : changeset id (integer).
- ^dstbranch : branch spec.
- Use 'cm ^help ^objectspec' to learn how to specify this object.
- ^dstchangeset : changeset id (integer).
-
- Example:
- cm ^find ^merge "^where ^dstchangeset = 108261" \
- --^format="{^srcbranch} {^srcchangeset} {^dstbranch} {^dstchangeset} {^owner}"
- (Finds the merges to changeset 108261 and prints the
- formatted output showing the source (branch and cset id),
- the destination (branch and cset id), and the merge owner.)
-
- ^date : date.
- Check "date constants" for more info in this guide.
- ^owner : user.
- Admits special user '^me'.
- ^GUID : Global Unique Identifier.
- Hexadecimal id in the format xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.
- ^type : string.
- Possible values are '^merge', '^cherrypick',
- '^cherrypicksubstractive', '^interval', '^intervalcherrypick'
- and '^intervalcherrypicksubstractive'
-
- Example:
- cm ^find ^merge "^where ^type = '^cherrypick' ^and ^owner = '^me'"
- (Finds all my cherry picks.)
-
- ^ID : integer.
-
- ^replicationlog:
- You can find replication log by filtering using the following fields:
-
- ^branch : branch spec.
- Use 'cm ^help ^objectspec' to learn how to specify this object.
-
- Example:
- cm ^find ^replicationlog "^where ^branch = '/main/gm22358'"
- (Finds the replication logs of branch 'gm22358'.)
-
- ^repositoryname : string.
- ^owner : user.
- Admits special user '^me'.
- ^date : date.
- Check "date constants" for more info in this guide.
- ^server : string.
- ^package : boolean.
-
- Example:
- cm ^find ^replicationlog "^where ^package = 'T' ^and ^server ^like '%cloud%'"
- (Finds the replication logs created from package which
- server name contains 'cloud'.)
-
- ^ID : integer.
-
- ^review:
- You can find code reviews by filtering using the following fields:
-
- ^status : string.
- ^assignee : string.
-
- Example:
- cm ^find ^review "^where ^status = 'pending' ^and ^assignee = '^me'"
- (Finds all my pending reviews.)
-
- ^title : string.
- ^target : object spec: branch or changeset.
- Use 'cm ^help ^objectspec' to learn how to specify this object.
-
- Example:
- cm ^find ^review "^where ^target = '^br:/main/scm17932'"
- (Finds the reviews related to branch 'scm17932'.)
-
- ^targetid : integer.
- ^targettype : string.
- Possible values are '^branch' and '^changeset'.
-
- Example:
- cm ^find ^review "^where ^targettype = '^changeset'"
- (Finds the reviews which target type is changeset.)
-
- ^date : date.
- Check "date constants" for more info in this guide.
- ^owner : user.
- Admits special user '^me'.
- ^GUID : Global Unique Identifier.
- Hexadecimal id in the format xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.
- ^ID : integer.
-
- You can use the '^order ^by' clause with this object. Specifically, you can sort
- by using the following fields:
- ^date
- ^modifieddate
- ^status
-
- ^revision:
- You can find revisions by filtering using the following fields:
-
- ^branch : branch spec.
- Use 'cm ^help ^objectspec' to learn how to specify this object.
- ^changeset : changeset id (integer).
-
- Example:
- cm ^find ^revision "^where ^changeset >= 111756"
- (Finds the revisions created in changeset 111756
- and later.)
-
- ^item : string or integer.
- ^itemid : integer.
-
- Examples:
- cm ^find ^revision "^where ^item = 'readme.txt' ^or ^itemid = 2250"
- (Finds the revisions of item 'readme.txt' plus
- item id 2250.)
-
- cm ^find ^revision "^where ^item = 'readme.txt' ^or ^item = 2250"
- (Gets the same revisions as the previous example.)
-
- ^attribute : string.
- ^attrvalue : string.
-
- Example:
- cm ^find ^revision "^where ^attribute = 'status' ^and ^attrvalue != 'open'"
- (Finds the revisions with attribute 'status' which
- value is other than 'open'.)
-
- ^archived : boolean.
-
- Example:
- cm ^find ^revision "^where ^archived = 'true'"
- (Finds the revisions that are archived in an
- external storage.)
-
- ^comment : string.
- ^date : date.
- Check "date constants" for more info in this guide.
- ^GUID : Global Unique Identifier.
- Hexadecimal id in the format xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.
- ^owner : user.
- Admits special user '^me'.
- ^parent : revision id (integer).
- ^returnparent : boolean.
- ^shelve : shelve id (integer).
- ^size : integer (in bytes).
- ^type : string.
- Possible values are '^dir', '^bin', and '^txt'.
-
- Example:
- cm ^find ^revision "^where ^type = '^txt' and \
- ^size > 300000 ^and ^owner = '^me' and ^date >= '2 ^months ^ago'"
- (Finds the text revisions created by me two months
- ago and with size greater than about 3MB.)
-
- ^workspacecheckoutid : integer.
- ^ID : integer.
-
- Replication fields. Check "replication related fields" below.
- ^ReplLogId
- ^ReplSrcDate
- ^ReplSrcId
- ^ReplSrcRepository
- ^ReplSrcServer
-
- ^shelve:
- You can find shelves by filtering using the following fields:
-
- ^owner : user.
- Admits special user '^me'.
- ^date : date.
- Check "date constants" for more info in this guide.
-
- Example:
- cm ^find ^shelve "^where ^owner != '^me' ^and ^date >= '^1 ^years ^ago'"
- (Finds the shelves created by others than me during the last
- year.)
-
- ^attribute : string.
- ^attrvalue : string.
- ^comment : string.
- ^GUID : Global Unique Identifier.
- Hexadecimal id in the format xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.
- ^parent : integer.
- ^shelveid : integer.
-
- Example:
- cm ^find ^shelve "^where ^shelveid = 2"
- (Finds the shelve with name 2.)
-
- ^ID : integer.
-
- Example:
- cm ^find ^shelve "^where ^id >= 3848"
- (Finds the shelves which object id is greater than 3848.)
-
- Replication fields. Check "replication related fields" below.
- ^ReplLogId
- ^ReplSrcDate
- ^ReplSrcId
- ^ReplSrcRepository
- ^ReplSrcServer
-
-
- Replication related fields:
- Many objects track replication data, meaning Plastic tracks where they were
- originally created.
-
- The fields you can use are:
-
- ^ReplSrcServer : repspec. Stands for "replication source server".
- Server where the object was replicated from.
-
- Example:
- cm ^find ^branch "^where ^replsrcserver='skull.codicefactory.com:9095'"
- (Finds the branches replicated from server 'skull'.)
-
- ^ReplSrcRepository : string. Stands for "replication source repo". It is
- the repository where the object was replicated from.
-
- Example:
- cm ^find ^branch "^where ^replsrcserver = 'skull.codicefactory.com:9095' \
- ^and ^replsrcrepository = 'codice'"
- (Finds the branches replicated from server 'skull'
- and from repository 'codice'.)
-
- ^ReplLogId : integer. ID of the replication operation. In Plastic,
- each time new objects are created from a replica,
- a new 'replicationlog' is created.
-
- Example:
- cm ^find ^revision "^where ^repllogid = 2019974"
- (Finds the revisions replicated from replica
- 2019974.)
-
- ^ReplSrcDate : date. It is the date when the replica actually took
- place.
- Replicated objects will retain its original creation
- date, o this field is useful if you want to find
- objects that where replicated within a specific
- timeframe.
-
- Example:
- cm ^find ^label "^where ^replsrcdate >= '^one ^month ^ago' \
- ^and ^date >= '15 ^days ^ago'"
- (Finds the labels created 15 days ago and were
- replicated one month ago.)
-
- cm ^find ^replicationlog "^where ^date > '^one ^week ^ago'"
- 8780433 27/09/2018 8:49:38 codice@BACKYARD:8087 F mbarriosc
- (Finds the replication logs created one week ago.)
-
- Now, you can check that the replicated branch was
- created before it was replicated over:
-
- cm ^find ^branch "^where ^repllogid = 8780433"
- 8780443 26/09/2018 12:20:55 /main/scm23078 maria codice T
-
- ^ReplSrcId : integer. It is the ID of the replication source server.
- You can discover this ID searching for
- '^replicationsource' objects with the 'cm ^find' command.
-
- Example:
- cm ^find ^replicationsource
- 7860739 codice@AFRODITA:8087 d9c4372a-dc55-4fdc-ad3d-baeb2e975f27
- 8175854 codice@BACKYARD:8087 66700d3a-036b-4b9a-a26f-adfc336b14f9
-
- Now, you can find the changesets replicated from
- codice@AFRODITA:8087:
-
- cm ^find ^changesets "^where ^replsrcid = 7860739"
-
-
- Date constants:
- You can use date formats that follow your machine localization settings.
- For example, if your computer displays dates in the format 'MM-dd-yyyy',
- you can use dates such as '12-31-2019' in your queries.
-
- You can also use the following constants to simplify your queries:
- '^today' : today's date.
- '^yesterday' : yesterday's date.
- '^this ^week' : current week's Monday date.
- '^this ^month' : current month's 1st day date.
- '^this ^year' : current year's January 1st date.
- '^one ^day ^ago' : one day before the current date.
- '^one ^week ^ago' : seven days before the current date.
- '^one ^month ^ago' : one month before the current date.
- 'n ^days ^ago' : 'n' days before the current date.
- 'n ^months ^ago' : 'n' months before the current date.
- 'n ^years ^ago' : 'n' years before the current date.
-
- The following '^where' clauses are valid for fields of type '^date':
- '(...) ^where ^date > '^today' (...)'
- '(...) ^where ^date < '^yesterday' (...)'
- '(...) ^where ^date > '^this ^week' (...)'
- '(...) ^where ^date > '^this ^month' (...)'
- '(...) ^where ^date < '^one ^day ^ago' ^and ^date > '3 ^days ^ago' (...)'
- '(...) ^where ^date < '^one ^week ^ago' ^and ^date > '3 ^weeks ^ago' (...)'
- '(...) ^where ^date < '^one ^month ^ago' ^and ^date > '3 ^months ^ago' (...)'
- '(...) ^where ^date > '1 ^year ^ago' (...)'
-
- You can also force a specific date format on the 'cm ^find' command using the
- --^dateformat flag. Check 'cm ^find --^help' for further details.
-
- == CMD_DESCRIPTION_TRIGGER_SHOWTYPES ==
- Displays available trigger types.
-
- == CMD_USAGE_TRIGGER_SHOWTYPES ==
- Usage:
-
- cm ^trigger ^showtypes
-
- == CMD_DESCRIPTION_SHOWACL ==
- Shows the ACL of an object.
-
- == CMD_USAGE_SHOWACL ==
- Usage:
-
- cm ^showacl | ^sa <object_spec> [--^extended] [--^xml[=<output_file>]]
- [--^encoding=<name>]
-
- object_spec Specification of the object to show the ACL of.
- The valid objects for this command are:
- repserver, repository, branch, changeset, label, item,
- and attribute.
- (Use 'cm ^help ^objectspec' to learn more about specs.)
-
- Options:
-
- --^extended Shows ACL hierarchy tree.
- --^xml Prints the output in XML format to the standard output.
- It is possible to specify an output file.
- --^encoding Used with the '--^xml' option, specifies the encoding to
- use in the XML output, i.e.: utf-8.
- See the MSDN documentation at
- http://msdn.microsoft.com/en-us/library/system.text.encoding.aspx
- to get the table of supported encodings and its format,
- (at the end of the page, in the "Name" column).
-
- == CMD_HELP_SHOWACL ==
- Examples:
-
- cm ^showacl ^repserver:PlasticServer:8084
- (Shows the ACL of the selected server.)
-
- cm ^sa ^br:/main --^extended
- (Shows the ACL hierarchy tree of the selected branch specification.)
-
- == CMD_DESCRIPTION_SHOWCOMMANDS ==
- Shows all the available commands.
-
- == CMD_USAGE_SHOWCOMMANDS ==
- Usage:
-
- cm ^showcommands
-
- == CMD_HELP_SHOWCOMMANDS ==
-
- == CMD_DESCRIPTION_SHOWOWNER ==
- Shows the owner of an object.
-
- == CMD_USAGE_SHOWOWNER ==
- Usage:
-
- cm ^showowner | ^so <object_spec>
-
- object_spec Specification of the object to show the owner of.
- The object must be one of the following:
- repository server, repository, branch, changeset,
- label, attribute, revision, and item.
- (Use 'cm ^help ^objectspec' to learn more about specs.)
-
- == CMD_HELP_SHOWOWNER ==
- Remarks:
-
- This command displays the owner of an object. The owner can be a user or
- a group. The owner can be modified with 'cm ^setowner' command.
-
- Examples:
-
- cm ^showowner ^repserver:PlasticServer:8084
- (Shows the owner of the selected server.)
-
- cm ^so ^item:samples\
- (Shows the owner of the selected item specification.)
-
- == CMD_DESCRIPTION_SHOWPERMISSIONS ==
- Lists the available permissions.
-
- == CMD_USAGE_SHOWPERMISSIONS ==
- Usage:
-
- cm ^showpermissions | ^sp
-
- == CMD_HELP_SHOWPERMISSIONS ==
- Examples:
-
- cm ^showpermissions
-
- == CMD_DESCRIPTION_SHOWSELECTOR ==
- Shows the workspace selector.
-
- == CMD_USAGE_SHOWSELECTOR ==
- This command is deprecated. It is still present for backwards compatibility
- but selectors were largely deprecated in Plastic SCM 4.0. Selectors still
- exist to specify the working branch or changeset, but the old rules to
- filter paths are no longer supported.
-
- Usage:
-
- cm ^showselector | ^ss [<wk_path> | <wk_spec>]
-
- wk_path Path of the workspace to show the selector.
- wk_spec Workspace specification. (Use 'cm ^help ^objectspec' to
- learn more about workspace specs.)
-
- == CMD_HELP_SHOWSELECTOR ==
- Remarks:
-
- If neither path nor workspace spec is specified, the command will take the
- current directory as the workspace path.
-
- Examples:
-
- cm ^showselector c:\workspace
- (Shows the selector for the selected workspace path.)
-
- cm ^ss
- (Shows the selector for current workspace.)
-
- cm ^showselector > mySelector.txt
- (Writes into a file the selector for the current workspace.)
-
- cm ^showselector ^wk:mywk@reptest
- (Shows the selector for the workspace 'mywk' in the repository 'reptest'.)
-
- == CMD_DESCRIPTION_SUPPORT ==
- Allows the user to perform support related operations.
-
- == CMD_USAGE_SUPPORT ==
- Usage:
-
- cm ^support <command> [options]
-
- Commands:
-
- ^bundle
-
- To get more information about each command run:
- cm ^support <command> --^usage
- cm ^support <command> --^help
-
- == CMD_HELP_SUPPORT ==
- Examples:
-
- cm ^support
- cm ^support ^bundle
- cm ^support ^bundle c:\outputfile.zip
-
- == CMD_DESCRIPTION_SUPPORT_BUNDLE ==
- Creates a "support bundle" package with relevant logs.
- You can attach the file while requesting help, asking for extra info, or
- submitting a bug.
-
- == CMD_USAGE_SUPPORT_BUNDLE ==
- Usage:
-
- cm ^support ^bundle [<outputfile>]
-
- Options:
-
- outputfile Creates the "support bundle" package at the specified
- location.
-
- == CMD_HELP_SUPPORT_BUNDLE ==
- Remarks:
-
- This command allows users to create a "support bundle" package which can be
- attached when requesting help, asking for extra info, or submitting a bug.
- The user can optionally specify a location for the output file; otherwise, the
- output file will be written to the temp directory.
-
- Examples:
-
- cm ^support ^bundle
- (Creates "support bundle" in temp directory.)
-
- cm ^support ^bundle c:\outputfile.zip
- (Creates "support bundle" at the specified location.)
-
- == CMD_DESCRIPTION_SWITCH ==
- Switches the workspace to a branch, changeset, label, or shelveset.
-
- == CMD_USAGE_SWITCH ==
- Usage:
-
- cm ^switch (<brspec> | <csetspec> | <lbspec> | <shspec>)
- [--^workspace=<path>] [--^repository=<name>]
- [--^forcedetailedprogress]
-
- (Use 'cm ^help ^objectspec' to learn more about branch, changeset, label,
- and shelveset specifications.)
-
- Options:
-
- --^workspace Path where the workspace is located.
- --^repository Switches to the specified repository.
- --^forcedetailedprogress Forces detailed progress even when standard
- output is redirected.
-
- == CMD_HELP_SWITCH ==
- Remarks:
-
- This command allows users to update the workspace tree to the contents
- of the specified object (branch, label, shelveset, or changeset).
-
- Examples:
-
- cm ^switch ^br:/main
- cm ^switch ^lb:Rel1.1
- cm ^switch ^br:/main/scm002 --^repository=rep2
- cm ^switch ^cs:4375
- cm ^switch ^sh:2
-
- == CMD_DESCRIPTION_SWITCH_TO_BRANCH ==
- Sets a branch as the working branch.
-
- == CMD_USAGE_SWITCH_TO_BRANCH ==
- This command is deprecated. Use cm switch instead.
-
- Usage:
-
- cm ^switchtobranch [options] [branch_spec]
-
- branch_spec: Branch specification.
-
- Options:
-
- --^label=name | --^changeset=number: load revisions from the specified
- label or changeset. One of these options is required if no branch_spec is
- given.
- --^changeset=cset: Switch to the specified changeset.
- --^repository=rep: Switch to the specified repository.
- --^workspace | -wk=path: path where the workspace is located.
-
- == CMD_HELP_SWITCH_TO_BRANCH ==
- Remarks:
-
- This command allows users to work in a branch.
- If no branch_spec specified, a label or a changeset must be specified.
- If no repository is specified, the branch is set to the current repository.
-
- Examples:
-
- cm ^switchtobranch ^br:/main
- cm ^switchtobranch ^br:/main/task001
-
- cm ^switchtobranch --^label=BL050
- (Read-only configuration. The command loads the contents of the labeled
- changeset.)
-
- == CMD_DESCRIPTION_SYNC ==
- Synchronize with Git.
-
- == CMD_USAGE_SYNC ==
- Usage:
-
- cm ^synchronize | ^sync <repspec> ^git [<url> [--^user=<usr_name> --^pwd=<pwd>]]
- [(--^txtsimilaritypercent | --^binsimilaritypercent | \
- --^dirsimilaritypercent)=<value>]
- [--^author] [--^skipgitlfs] [--^gitpushchunk=<value>]
-
-
- repspec Repository specification. (Use 'cm ^help ^objectspec' t
- learn more about repository specs.)
- git (Default).
-
- Options:
-
- url Remote repository URL (http(s):// or git:// or a
- SSH URL).
- --^user User name for the specified URL.
- --^pwd Password for the specified URL.
- --^txtsimilaritypercent \
- --^binsimilaritypercent \
- --^dirsimilaritypercent
- To detect moved items, the same way as Plastic SCM
- GUI does.
- --^author Uses name and timestamp values from the git author.
- (git committer by default)
- --^skipgitlfs Ignores the Git LFS configuration in the
- .gitattributes file. It acts like without Git LFS
- support.
- --^gitpushchunk Process the push operation (exporting changes from
- Plastic to Git) in chunks of a certain number of
- changesets. This is only useful for huge repos to
- avoid network or package size related issues or
- just for debugging purposes. It uses chunks of
- 1000 changesets if no value is specified.
-
- == CMD_HELP_SYNC ==
- Remarks:
-
- If the git repository requires user and password, then use '^url', '--^user',
- and '--^pwd' options.
- If the git repository doesn't require user and password, then use '^url'
- option with the first sync operation. With next sync operations, '^url'
- option is optional.
-
- To use the SSH protocol to perform the sync, you must have the 'ssh' client
- added to the PATH environment variable and properly configured to connect
- to the remote host (i.e. private/public keys configured).
-
- Examples:
-
- cm ^sync default@localhost:8087 ^git git://localhost/repository
-
- == CMD_DESCRIPTION_TRIGGER ==
- Allows the user to manage triggers.
-
- == CMD_USAGE_TRIGGER ==
- Usage:
-
- cm ^trigger | ^tr <command> [options]
-
- Commands:
-
- ^create | ^mk
- ^delete | ^rm
- ^edit
- ^list | ^ls
- ^showtypes
-
- To get more information about each command run:
- cm ^trigger <command> --^usage
- cm ^trigger <command> --^help
-
- == CMD_HELP_TRIGGER ==
- Examples:
-
- cm ^tr ^mk ^before-mklabel new "/path/to/script" --^server=myserver:8084
- cm ^tr ^edit ^before-mklabel 7 --^position=4 --^server=myserver:8084
- cm ^tr ^ls ^before-mkbranch --^server=myserver:8084
- cm ^tr ^rm ^after-setselector 4
- cm ^tr ^showtypes
-
- == CMD_DESCRIPTION_TUBE ==
- Runs commands related to Plastic Tube.
-
- == CMD_USAGE_TUBE ==
- Usage:
-
- cm ^tube ^config -^u=<user> -^p=<password>
- (Configures Plastic SCM to use Plastic Tube with the specified user and
- password.)
-
-
- cm ^tube ^create <remoteuser>
- (Creates the tube "remoteuser -> myuser".
- The user "myuser" allows to "remoteuser" to connect to "myuser" server.
- Connections can be established from "remoteuser" to "myuser".
- Only tubes from other users to the current tube user can be created.)
-
- cm ^tube ^remove <remoteuser>
- (Removes the tube "remoteuser -> myuser".)
-
-
- cm ^tube ^local
- (Lists the local repositories shared in the local server and the users
- that it is shared with.)
-
- cm ^tube ^remote
- (Lists the shared remote repositories that are shared with the current
- tube user.)
-
-
- cm ^tube ^share <rep_spec>[ ...] -^u=<remoteuser> -^a=(^pull | ^push | ^pull,^push)
- (Shares the local repository(s) with the remote user and sets the specified
- access mode. Use a whitespace to separate repository specs.)
-
- cm ^tube ^unshare <rep_spec>[ ...] -^u=<remoteuser>
- (Unshares the local repository(s) with the remote user. Use a whitespace to
- separate repository specs.)
-
-
- cm ^tube ^connect
- (Connects the Plastic SCM server to Plastic Tube.)
- cm ^tube ^disconnect
- (Disconnects the Plastic SCM server from Plastic Tube.)
- cm ^tube ^status
- (Shows if the Plastic SCM server is connected to Plastic Tube.)
-
- Options
-
- -^u Tube user (the plasticscm.com user).
- -^p User password.
- -^a Sets the access mode.
- rep_spec Repository specification. (Use 'cm ^help ^objectspec' to
- learn more about repository specs.)
-
- == CMD_HELP_TUBE ==
- Remarks:
-
- Use the 'cm ^tube' command to manage Plastic Tube.
-
- Examples:
-
- cm ^tube ^config -^u=ruben@codicesoftware.com -^p=rubenpassword
-
- cm ^tube ^create pablo@codicesoftware.com
- ('pablo@codicesoftware.com' can connect to the current Plastic Tube user)
- cm ^tube ^remove pablo@codicesoftware.com
-
- cm ^tube ^local
- cm ^tube ^remote
-
- cm ^tube ^share repo@server:8087 -^u=pablo@codicesoftware.com -^a=^pull,^push
- cm ^tube ^share repo@server:8087 doc@server:8087 -^u=pablo@codicesoftware.com -^a=^push
- cm ^tube ^unshare repo@server:8087 -^u=pablo@codicesoftware.com
-
- cm ^tube ^connect
- cm ^tube ^disconnect
- cm ^tube ^status
-
- == CMD_DESCRIPTION_UNCO ==
- Undoes the checkout of an item.
-
- == CMD_USAGE_UNCO ==
- Usage:
-
- cm ^undocheckout | ^unco <item_path>[ ...] [-^a | --^all] [--^symlink] [--^silent]
- [--^machinereadable [--^startlineseparator=<sep>]
- [--^endlineseparator=<sep>] [--^fieldseparator=<sep>]]
-
- item_path Items to apply the operation. Use a whitespace to separate
- paths. Use double quotes (" ") to specify paths
- containing spaces.
- Use . to apply the operation to current directory.
-
- Options:
-
- -^a | --^all Undoes all of the changes in the specified items. If
- the item(s) were checked out, the checkout will be
- reverted. If the item(s) were locally modified, the
- modifications will be reverted.
- --^symlink Applies the undocheckout operation to the link and not
- to the target.
- --^silent Does not show any output.
- --^machinereadable Outputs the result in an easy-to-parse format.
- --^startlineseparator Used with the '--^machinereadable' flag,
- specifies how the lines should start.
- --^endlineseparator Used with the '--^machinereadable' flag,
- specifies how the lines should end.
- --^fieldseparator Used with the '--^machinereadable' flag,
- specifies how the fields should be separated.
-
- == CMD_HELP_UNCO ==
- Remarks:
-
- If an item is checked out and you do not want to checkin it, you can undo
- the checkout using this command. Both files and folders can be unchecked
- out. The item will be updated to the state it had before checking it out.
-
- Requirements:
- - The item must be under source code control.
- - The item must be checked out.
-
- Reading input from stdin:
-
- The '^undocheckout' command can read paths from stdin. To do this, pass a
- single dash "-".
- Example: cm ^undocheckout ^checkin -
-
- Paths will be read until an empty line is entered.
- This allows you to use pipe to specify for which files to undo the checkout.
- Example:
- dir /S /B *.c | cm ^undocheckout --^all -
- (In Windows, undoes the checkout of all .c files in the workspace.)
-
- Examples:
-
- cm ^undocheckout .
- (Undoes checkouts in the current directory.)
-
- cm ^undocheckout file1.txt file2.txt
- cm unco c:\workspace\file.txt
- (Undoes checkouts of the selected files.)
-
- cm ^unco -^a file1.txt
- (Undoes checkouts or local modifications of 'file1.txt')
-
- cm ^unco link --^symlink
- (Applies the undocheckout operation to the symlink file and not to the target.)
-
- cm ^status --^short --^changelist=pending_to_review | cm ^undocheckout -
- (Undoes client changelist.
- The command above will list the paths in the changelist named
- 'pending_to_review' and the path list will be redirected to the input of the
- undocheckout command).
-
- cm ^unco . --^machinereadable
- (Undoes checkouts in the current directory, and prints the result in a
- simplified, easier-to-parse format.)
-
- cm ^unco . --^machinereadable --^startlineseparator=">" --^endlineseparator="<" \
- --^fieldseparator=","
- (Undoes checkouts in the current directory, and prints the result in a
- simplified, easier to parse format, starting and ending the lines, and
- separating the fields, with the specified strings.)
-
- == CMD_DESCRIPTION_UNCOUNCHANGED ==
- Undoes non-changed checked out items.
-
- == CMD_USAGE_UNCOUNCHANGED ==
- Usage:
-
- cm ^uncounchanged | ^unuc <item_path>[ ...] [-^R | -^r | --^recursive]
- [--^symlink] [--^silent]
-
- item_path Items to apply the operation. Use a whitespace to separate
- paths. Use double quotes (" ") to specify paths
- containing spaces.
- Use . to apply the operation to current directory.
-
- Options:
-
- -^R Undoes unchanged items recursively in the specified paths.
- --^symlink Applies the uncounchanged operation to the link and not
- to the target.
- --^silent Does not show any output.
-
- == CMD_HELP_UNCOUNCHANGED ==
- Remarks:
-
- This command is applied from the root of the workspace recursively.
-
- Reading input from stdin:
-
- The '^uncounchanged' command can read paths from stdin. To do this, pass a
- single dash "-".
- Example: cm ^uncounchanged -
-
- Paths will be read until an empty line is entered.
- This allows you to use pipe to specify for which unchanged files to undo
- the checkout.
- Example:
- dir /S /B *.c | cm ^uncounchanged -
- (In Windows, undoes the checkout on all unchanged .c files in the
- workspace.)
-
- Examples:
-
- cm ^uncounchanged . -^R
- (Undoes checkouts of not changed files recursively on the current directory.)
-
- cm ^unuc /home/myuser/mywk/project/templates -^R
- (Undoes checkouts of not changed files recursively on the selected directory.)
-
- == CMD_DESCRIPTION_UNDELETE ==
- Undeletes an item using a specific revision.
-
- == CMD_USAGE_UNDELETE ==
- Usage:
-
- cm ^undelete <revspec> <path>
-
- revspec Specification of the revision whose contents will
- be loaded in the workspace. (Use 'cm ^help ^objectspec' to
- learn more about revision specs.)
- path Restore path.
-
- == CMD_HELP_UNDELETE ==
- Remarks:
-
- The item to undelete should not be already loaded in the workspace.
-
- The '^undelete' operation is not supported for xlinks.
-
- Example:
-
- cm ^undelete ^revid:756 C:\mywks\src\foo.c
- cm ^undelete ^itemid:68#^cs:2 C:\mywks\dir\myfile.pdf
- cm ^undelete ^serverpath:/src#^br:/main C:\mywks\Dir
-
- == CMD_DESCRIPTION_UNDOCHANGE ==
- Undoes the changes on a path.
-
- == CMD_USAGE_UNDOCHANGE ==
- Usage:
-
- cm ^undochange | ^unc <item_path>[ ...] [-^R | -^r | --^recursive]
-
- item_path Items to apply the operation. Use a whitespace to separate
- paths. Use double quotes (" ") to specify paths
- containing spaces.
- Use . to apply the operation to current directory.
-
- Options:
-
- -^R Applies the operation recursively.
-
- == CMD_HELP_UNDOCHANGE ==
- Remarks:
-
- If an item is checked out or modified but not checked in and you do not
- want to check it in, you can undo the changes using this command. The item
- will be updated to the contents it had before.
-
- Reading input from stdin:
-
- The '^undochange' command can read paths from stdin. To do this, pass a
- single dash "-".
- Example: cm ^undochange -
-
- Paths will be read until an empty line is entered.
- This allows you to use pipe to specify for which files to undo changes.
- Example:
- dir /S /B *.c | cm ^undochange -
- (In Windows, undoes the changes of all .c files in the workspace.)
-
- Examples:
-
- cm ^unc .
- (Undoes changes of the files on the current directory.)
-
- cm ^undochange . -^R
- (Undoes changes of the files recursively on the current directory.)
-
- cm ^unc file1.txt "file 2.txt"
- (Undoes changes of the selected files.)
-
- cm ^unc c:\workspace\file.txt
- (Undoes changes of the selected file.)
-
- == CMD_DESCRIPTION_UNDO ==
- Undoes changes in a workspace.
-
- == CMD_USAGE_UNDO ==
- Usage:
-
- cm ^undo [<path>[ ...]] [--^symlink] [-^r | --^recursive] [<filter>[ ...]]
- [--^silent | --^machinereadable [--^startlineseparator=<sep>]
- [--^endlineseparator=<sep>] [--^fieldseparator=<sep>]]
-
- path Path of the files or directories to apply the operation to.
- Use double quotes (" ") to specify paths containing spaces.
- Use a whitespace to separate paths.
- If no path is specified, by default the undo operation will take
- all of the files in the current directory.
- filter Applies the specified filter or filters to the given paths. Use
- a whitespace to separate filters. See the Filters section for
- more information.
-
- Options:
-
- --^symlink Applies the undo operation to the symlink and not
- to the target.
- -^r Executes the undo recursively.
- --^silent Does not show any output.
- --^machinereadable Outputs the result in an easy-to-parse format.
- --^startlineseparator Used with the '--^machinereadable' flag, specifies
- how the lines should start.
- --^endlineseparator Used with the '--^machinereadable' flag, specifies
- how the lines should end.
- --^fieldseparator Used with the '--^machinereadable' flag, specifies
- how the fields should be separated.
- Filters:
-
- The paths can be filtered using one or more of the filters below. Each of
- those filters refers to a type of change:
- --^checkedout Selects checked-out files and directories.
- --^unchanged Selects files whose content is unchanged.
- --^changed Selects locally changed or checked-out files and directories.
- --^deleted Selects deleted files and directories.
- --^moved Selects moved files and directories.
- --^added Selects added files and directories.
-
- If the path matches one or more of the specified kinds of changes, those
- types of changes will be undone on that said path.
- For example, if you specify both '--^checkedout' and '--^moved', if a file
- is both checkedout and moved, both changes will be undone.
-
- If no filter is specified, all kinds of changes are undone.
-
- == CMD_HELP_UNDO ==
- Remarks:
-
- - If no path is specified, it will undo every change in the current
- directory but not recursively.
-
- - If one or more paths are specified, it will undo every change in the
- specified paths but not recursively.
-
- - If you want the operation to be recursive, you must specify the '-^r' flag.
- To undo all of the changes below a directory including changes affecting
- the directory itself, run the following command:
-
- cm ^undo dirpath -^r
-
- If dirpath is a workspace path, every change in the workspace will be
- undone.
-
- - The '^undo' command is dangerous because it undoes work irreversibly.
- Once the ^undo has finished, it is not possible to recover the previous
- state of the files and directories affected by it.
-
- - Consider the following scenario:
-
- /src
- |- file.txt
- |- code.cs
- \- /test
- |- test_a.py
- \- test_b.py
-
- These commands are equivalent when executed from the /src directory:
- cm ^undo
- cm ^undo *
- cm ^undo file.txt code.cs /test
-
- These commands are also equivalent when executed from the /src directory:
- cm ^undo .
- cm ^undo /src file.txt code.cs
-
-
- Deleted items:
-
- To undo file and directory deletions, you must either specify the full path
- of the item, or specify the containing directory and use the recursive ('-^r')
- flag.
-
- For example:
-
- cm ^undo .
- (Does NOT undo deletions (but other changes) in the current directory.)
-
- cm ^undo . -^r
- (Undoes all deletions (and other changes) in the current directory
- recursively.)
-
- cm ^undo src/file.txt
- (Undoes deletion (or other change) of src/file.txt.)
-
- Examples:
-
- cm ^undo . -^r
- (Undoes all changes in the current directory recursively. If executed
- from the workspace's root, undoes all changes in the entire workspace.)
-
- cm ^co file.txt
- cm ^undo file.txt
- (Undoes the checkout on 'file.txt'.)
-
- cm ^undo c:\otherworkspace\file.txt
- (Undoes changes in file 'file.txt' located in a workspace other than the
- current one.)
-
- ^echo ^content >> file.txt
- cm ^undo file.txt
- (Undoes the local change to 'file.txt'.)
-
- cm ^undo src
- (Undoes changes to the src directory and its files.)
-
- cm ^undo src/*
- (Undoes changes in every file and directory contained in src, without
- affecting src.)
-
- cm ^undo *.cs
- (Undoes changes to every file or directory that matches *.cs in the current
- directory.)
-
- cm ^undo *.cs -^r
- (Undoes changes on every file or directory that matches *.cs in the current
- directory and every directory below it.)
-
- cm ^co file1.txt file2.txt
- ^echo ^content >> file1.txt
- cm ^undo --^unchanged
- (Undoes the checkout of unchanged 'file2.txt', ignoring locally changed
- 'file1.txt'.)
-
- ^echo ^content >> file1.txt
- ^echo ^content >> file2.txt
- cm ^co file1.txt
- cm ^undo --^checkedout
- (Undoes the changes in checked-out file 'file1.txt', ignoring 'file2.txt' as
- it is not checked-out.)
-
- cm ^add file.txt
- cm ^undo file.txt
- (Undo the add of 'file.txt' making it once again a private file.)
-
- ^rm file1.txt
- ^echo ^content >> file2.txt
- cm ^add file3.txt
- cm ^undo --^deleted --^added *
- (Undoes the 'file1.txt' delete and 'file3.txt' add, ignoring the 'file2.txt'
- change.)
-
- == CMD_DESCRIPTION_LOCK_UNLOCK ==
- Undoes item locks on a lockserver.
-
- == CMD_USAGE_LOCK_UNLOCK ==
- Usage:
-
- cm ^lock ^unlock [<repserverspec>] <guid>[ ...]
-
- repserverspec Repository server specification. (Use 'cm ^help ^objectspec'
- to learn more about repserver specs.)
- guid A list of item GUIDs to be unlocked. Use a whitespace to
- separate GUIDs.
-
- == CMD_HELP_LOCK_UNLOCK ==
- Remarks:
-
- - The command uses the specified server to unlock the items.
- - If no server is specified, the command tries to obtain a server from the
- current workspace.
- - If no server was calculated on the previous steps, the server is obtained
- from the current Plastic SCM client configuration.
- - Only the administrator of the server can run the 'cm ^unlock' command.
- - To specify a GUID, the format should be the 32-digit separated by
- hyphens format (optionally enclosed in braces):
- {00000000-0000-0000-0000-000000000000}
- or
- 00000000-0000-0000-0000-000000000000
-
- Examples:
-
- cm ^lock ^unlock 91961b14-3dfe-4062-8c4c-f33a81d201f5
- (Undoes the selected item lock.)
-
- cm ^lock ^unlock DIGITALIS:8084 2340b4fa-47aa-4d0e-bb00-0311af847865 \
- bcb98a61-2f62-4309-9a26-e21a2685e075
- (Undoes the selected item locks on lockserver named 'DIGITALIS'.)
-
- cm ^lock ^unlock tardis@cloud 4740c4fa-56af-3dfe-de10-8711fa248635 \
- 71263c17-5eaf-5271-4d2c-a25f72e101d4
- (Undoes the selected item locks on cloud lockserver named 'tardis'.)
-
- == CMD_DESCRIPTION_UPDATE ==
- Updates the workspace and downloads latest changes.
-
- == CMD_USAGE_UPDATE ==
- Usage:
-
- cm ^update [<item_path> | --^last]
- [--^changeset=<csetspec>] [--^cloaked] [--^dontmerge] [--^forced]
- [--^ignorechanges] [--^override] [--^recursewk] [--^skipchangedcheck]
- [--^silent] [--^verbose] [--^xml[=<output_file>]] [--^encoding=<name>]
- [--^machinereadable [--^startlineseparator=<sep>]
- [--^endlineseparator=<sep>] [--^fieldseparator=<sep>]]
- [--^forcedetailedprogress]
-
- item_path Path to update.
- Use . to apply update to current directory.
- If no path is specified, then the current workspace is
- fully updated.
- --^last Changes the workspace selector from a changeset
- configuration or a label configuration to a branch
- configuration before updating.
- The selector is changed to the branch the changeset or
- label belongs to.
-
- Options:
-
- --^changeset Updates the workspace to a specific changeset.
- (Use 'cm ^help ^objectspec' to learn more about
- changeset specs.)
- --^cloaked Includes the cloaked items in the update operation.
- If this option is not specified, those items that are
- cloaked will be ignored in the operation.
- --^dontmerge In case an update merge is required during the update
- operation, does not perform it.
- --^forced Forces updating items to the revision specified in
- the selector.
- --^ignorechanges Ignores the pending changes warning message that is
- shown if there are pending changes detected when
- updating the workspace.
- --^override Overrides changed files outside Plastic SCM control.
- Their content will be overwritten with the server
- content.
- --^recursewk Updates all the workspaces found within the current
- path. Useful to update all the workspaces contained
- in a specific path.
- --^skipchangedcheck Checks if there are local changes in your workspace
- before starting. If you always checkout before
- modifying a file, you can use this check and speed
- up the operation.
- --^silent Does not show any output.
- --^verbose Shows additional information.
- --^xml Prints the output in XML format to the standard output.
- It is possible to specify an output file.
- --^encoding Used with the --^xml option, specifies the encoding to
- use in the XML output, i.e.: utf-8.
- See the MSDN documentation at
- http://msdn.microsoft.com/en-us/library/system.text.encoding.aspx
- to get the table of supported encodings and its format,
- (at the end of the page, in the "Name" column).
- --^machinereadable Outputs the result in an easy-to-parse format.
- --^startlineseparator Used with the '--^machinereadable' flag,
- specifies how the lines should start.
- --^endlineseparator Used with the '--^machinereadable' flag,
- specifies how the lines should end.
- --^fieldseparator Used with the '--^machinereadable' flag,
- specifies how the fields should be separated.
- --^forcedetailedprogress Forces detailed progress even when standard output
- is redirected.
- == CMD_HELP_UPDATE ==
- Remarks:
-
- The '^update' command only downloads needed files.
-
- The command assumes recursive operation.
-
- When the '--^last' option is used, it is not necessary to specify a path.
- In this case, the workspace the current working directory belongs to will
- be updated.
- (Remember that specifying this flag could cause the workspace
- selector to be changed to a branch configuration if the selector was
- previously pointing to a changeset or a label.)
-
-
- Examples:
-
- cm ^update
- (Updates all in the current workspace.)
-
- cm ^update .
- (Updates current directory, and all children items.)
-
- cm ^update . --^forced --^verbose
- (Forces retrieval of all revisions.)
-
- cm ^update --^last
-
- cm ^update . --^machinereadable --^startlineseparator=">"
- (Updates current directory and prints the result in a simplified
- easier-to-parse format, starting the lines with the specified
- strings.)
-
- == CMD_DESCRIPTION_VERSION ==
- Shows the current client version number.
-
- == CMD_USAGE_VERSION ==
- Usage:
-
- cm ^version
-
- == CMD_HELP_VERSION ==
-
- == CMD_DESCRIPTION_WHOAMI ==
- Shows the current Plastic SCM user.
-
- == CMD_USAGE_WHOAMI ==
- Usage:
-
- cm ^whoami
-
- == CMD_HELP_WHOAMI ==
-
- == CMD_USAGE_WKTREENODESTATUS ==
- Usage:
-
- cm ^wktreenodestatus path1, path2, ...
-
- == CMD_DESCRIPTION_WORKSPACE ==
- Allows the user to manage workspaces.
-
- == CMD_USAGE_WORKSPACE ==
- Usage:
-
- cm ^workspace | ^wk <command> [options]
-
- Commands:
-
- ^list | ^ls
- ^create | ^mk
- ^delete | ^rm
- ^move | ^mv
- ^rename
-
- To get more information about each command run:
- cm ^workspace <command> --^usage
- cm ^workspace <command> --^help
-
- == CMD_HELP_WORKSPACE ==
- Examples:
-
- cm ^workspace ^create myWorkspace wk_path
- cm ^workspace ^list
- cm ^workspace ^delete myWorkspace
-
- == CMD_DESCRIPTION_WORKSPACE_CREATE ==
- Creates a new workspace.
-
- == CMD_USAGE_WORKSPACE_CREATE ==
- Usage:
-
- cm ^workspace | ^wk [^create | ^mk] <rep_spec>
- [^create | ^mk] <wk_name> <wk_path> [<rep_spec>]
- [^create | ^mk] <wk_name> <wk_path> [--^selector[=<selector_file>]
- (Creates a new workspace.)
-
- cm ^workspace | ^wk [^create | ^mk] <wk_name> <wk_path> --^dynamic --^tree=[<tree>]
- (Creates a dynamic workspace. This feature is still experimental, and it's
- only available for Windows.)
-
- wk_name The new workspace name.
- wk_path Path of the new workspace.
- rep_spec Creates the new workspace with the specified repository.
- Repository specification: check 'cm ^help ^objectspec'.
-
- Options:
-
- --^selector Edits a selector for the new workspace.
- If a selector file is specified, then sets the selector
- for the new workspace from the specified file.
- --^dynamic Creates a dynamic workspace. This feature is still
- experimental, and it's only available for Windows.
- Specifying this flag requires using the --^tree parameter.
- --^tree Used with the '--^dynamic' flag, specifies the initial
- point the dynamic workspace is going to load. It can
- either be a branch, changeset, or label specification.
- The workspace will later on use the repository in the
- spec. (Use 'cm ^help ^objectspec' to learn more about specs.)
-
- == CMD_HELP_WORKSPACE_CREATE ==
- Remarks:
-
- - A workspace is a view of the repository mapped to the local filesystem.
- The workspace selector defines the rules that specify workspace content.
- Use 'cm ^showselector' to display a workspace selector or 'cm ^setselector'
- to modify it.
- - If neither rep_spec nor '--^selector' is specified, then the workspace
- will automatically be configured to use the first repository
- (alphabetically) of the server configured in the client.conf file.
- - The dynamic workspaces is a experimental feature (Windows only), and it
- requires the plasticfs.exe program running.
-
- Examples:
-
- cm ^workspace ^create mycode
- cm ^wk ^mk mycode
- (Creates a 'mycode' workspace pointing to the repository with the same name.
- The workspace directory will be created under the current directory.)
-
- cm ^wk ^mk mycode@localhost:8084
- cm ^wk ^mk mycode@myorganization@cloud
- (Creates a 'mycode' workspace as before, but you can specify different repository server.)
-
- cm ^workspace ^create myworkspace c:\workspace
- cm ^wk ^mk myworkspace /home/john/plastic_view
- (Creates 'myworkspace' workspace in Windows and in Linux respectively.)
-
- cm ^wk mywktest c:\wks\wktest --^selector=myselector.txt
- (Creates 'mywktest' workspace using the selector in 'myselector.txt' file.)
-
- cm ^wk mywkprj c:\wks\wkprj myrep@^repserver:localhost:8084
- (Creates 'mywkprj' workspace with the selected repository.)
-
- cm ^wk mywkprj c:\dynwks\mywkprj --^dynamic --^tree=^br:/main@myrep@localhost:8084
- (Creates dynamic 'mywkprj' workspace with the 'myrep@localhost:8084'
- repository, pointing to '^br:/main' the first time it gets mounted.)
-
- == CMD_DESCRIPTION_WORKSPACE_DELETE ==
- Deletes a workspace.
-
- == CMD_USAGE_WORKSPACE_DELETE ==
- Usage:
-
- cm ^workspace | ^wk ^delete | ^rm [<wk_path> | <wkspec>] [--^keepmetadata]
-
- wk_path Path of the workspace to be deleted.
- wkspec Specification of the workspace to delete. (Use
- 'cm ^help ^objectspec' to learn more about specs.)
-
- Options:
-
- --^keepmetadata Does not delete the metadata files in the .plastic
- folder.
-
- == CMD_HELP_WORKSPACE_DELETE ==
- Remarks:
-
- This command deletes a workspace, specified by path or spec.
- If no arguments are specified, current workspace will be assumed.
-
- Examples:
-
- cm ^workspace ^delete
- (Removes current workspace.)
-
- cm ^wk ^delete c:\workspace
- cm ^workspace rm /home/danipen/wks
- cm ^wk ^rm ^wk:MiWorkspace
- cm ^wk ^rm ^wk:MiWorkspace@DIGITALIS
-
- == CMD_DESCRIPTION_WORKSPACE_LIST ==
- Lists workspaces.
-
- == CMD_USAGE_WORKSPACE_LIST ==
- Usage:
-
- cm ^workspace | ^wk [^list | ^ls] [--^format=<str_format>]
-
- Options:
-
- --^format Retrieves the output message in a specific format. See
- Remarks for more info.
-
- == CMD_HELP_WORKSPACE_LIST ==
- Remarks:
-
- Output format parameters (--^format option):
- This command accepts a format string to show the output.
- The output parameters of this command are the following:
-
- {0} | {^wkname} Workspace name.
- {1} | {^machine} Client machine name.
- {2} | {^path} Workspace path.
- {3} | {^wkid} Workspace unique identifier.
- {4} | {^wkspec} Workspace specification using the format:
- 'wkname@machine'.
- {^tab} Inserts a tab space.
- {^newline} Inserts a new line.
-
- Examples:
-
- cm ^wk
- (Lists all workspaces.)
-
- cm ^workspace ^list --^format={0}#{3,40}
- cm ^workspace ^list --^format={^wkname}#{^wkid,40}
- (Lists all workspaces and shows the workspace name, a # symbol and the
- workspace GUID field in 40 spaces, aligned to left.)
-
- cm ^wk --^format="Workspace {0} in path {2}"
- cm ^wk --^format="Workspace {^wkname} in path {^path}"
- (Lists all workspaces and shows result as formatted strings.)
-
- == CMD_DESCRIPTION_WORKSPACE_MOVE ==
- Moves a workspace.
-
- == CMD_USAGE_WORKSPACE_MOVE ==
- Usage:
-
- cm ^workspace | ^wk ^move | ^mv [<wkspec>] <new_path>
-
- Options:
-
- wkspec Specification of the workspace to move. (Use
- 'cm ^help ^objectspec' to learn more about specs.)
- new_path Workspace will be moved to here.
-
- == CMD_HELP_WORKSPACE_MOVE ==
- Remarks:
-
- This command allows users to move a workspace to another location on disk.
-
- Examples:
-
- cm ^workspace ^move myWorkspace \new\workspaceDirectory
- (Moves 'myWorkspace' to the specified location.)
-
- cm ^wk ^mv c:\users\maria\wkspaces\newlocation
- (Moves the current workspace to the new location.)
-
- == CMD_DESCRIPTION_WORKSPACE_RENAME ==
- Renames a workspace.
-
- == CMD_USAGE_WORKSPACE_RENAME ==
- Usage:
-
- cm ^workspace | ^wk ^rename [<wk_name>] <new_name>
-
- wk_name Workspace to rename.
- new_name New name for the workspace.
-
- == CMD_HELP_WORKSPACE_RENAME ==
- Remarks:
-
- This command renames a workspace.
- If no workspace name is supplied, the current workspace will be used.
-
- Examples:
-
- cm ^workspace ^rename mywk1 wk2
- (Renames the workspace 'mywk1' to 'wk2'.)
-
- cm ^wk ^rename newname
- (Renames the current workspace to 'newname'.)
-
- == CMD_DESCRIPTION_WORKSPACESTATUS ==
- Shows changes in the workspace.
-
- == CMD_USAGE_WORKSPACESTATUS ==
- Usage:
-
- cm ^status [<wk_path>] [--^changelist[=<name>] | --^changelists] [--^cutignored]
- [ --^header] [ --^noheader] [ --^nomergesinfo] [ --^head]
- [--^short] [--^symlink] [ --^dirwithchanges] [--^xml[=<output_file>]]
- [--^encoding=<name>] [ --^wrp | --^wkrootrelativepaths]
- [--^fullpaths | --^fp] [<legacy_options>] [<search_types>[ ...]]
- [--^pretty]
- [--^machinereadable [--^startlineseparator=sep]
- [--^endlineseparator=sep] [--^fieldseparator=sep]]
-
- Options:
-
- wk_path Path of the workspace where the search will be
- performed.
- --^changelist Shows changes in the selected changelist.
- --^changelists Shows changes grouped in client changelists.
- --^cutignored Skips the contents of ignored directories.
- Requires the '--^ignored' search type. See the Search
- types section for more information.
- --^header Only prints the workspace status.
- --^noheader Only prints the modified item search result.
- --^nomergesinfo Doesn't print the merge info for changes.
- --^head Prints the status of the last changeset on the branch.
- --^short Lists only paths that contains changes.
- --^symlink Applies the operation to the symlink and not to the
- target.
- --^dirwithchanges Shows directories that contain changes inside them
- (added, moved, removed items inside).
- --^xml Prints the output in XML format to the standard output.
- It is possible to specify an output file.
- --^pretty Prints workspace changes in a nice table format.
- --^encoding Used with the --^xml option, specifies the encoding to
- use in the XML output, i.e.: utf-8.
- See the MSDN documentation at
- http://msdn.microsoft.com/en-us/library/system.text.encoding.aspx
- to get the table of supported encodings and its format,
- (at the end of the page, in the "Name" column).
- --^wrp Print workspace root relative paths instead of
- current directory relative paths.
- --^fullpaths, --^fp Force printing absolute paths, overriding any other
- path printing setting.
- --^machinereadable Outputs the result in an easy-to-parse format.
- --^startlineseparator Used with the '--^machinereadable' flag,
- specifies how the lines should start.
- --^endlineseparator Used with the '--^machinereadable' flag,
- specifies how the lines should end.
- --^fieldseparator Used with the '--^machinereadable' flag,
- specifies how the fields should be separated.
-
- Legacy options:
-
- --^cset Prints the workspace status in the legacy format.
- --^compact Prints the workspace status and changelists in the
- legacy format.
- --^noheaders When used in conjunction with the '--^compact' flag, the
- changelist headers will not be printed. (Does not apply
- to the new changelists format.)
-
- Search types:
-
- --^added Prints added items.
- --^checkout Prints checkedout items.
- --^changed Prints changed items.
- --^copied Prints copied items.
- --^replaced Prints replaced items.
- --^deleted Prints deleted items.
- --^localdeleted Prints locally deleted items.
- --^moved Prints moved items.
- --^localmoved Prints locally moved items.
- --^percentofsimilarity=<value> Percent of similarity between two files in
- order to consider them the same item. Used
- in the locally moved search. Its default
- value is 20%.
- --^txtsameext Only those text files that have the same
- extension will be taken into account by the
- similarity content matching process during
- the moved items search. By default, any
- text file will be processed.
- --^binanyext Any binary file will be taken into account
- by the similarity content matching process
- during the moved items search. By default,
- only those binary files that have the same
- extension will be processed.
- --^private Prints non controlled items.
- --^ignored Prints ignored items.
- --^hiddenchanged Prints hidden changed items. (Includes
- '--^changed')
- --^cloaked Prints cloaked items.
- --^controlledchanged This flag substitutes the following options:
- '--^added', '--^checkout', '--^copied',
- '--^replaced', '--^deleted', '--^moved'.
- --^all This flag replaces the following parameters:
- '--^controlledchanged', '--^changed',
- '--^localdeleted', '--^localmoved', '--^private'.
-
- == CMD_HELP_WORKSPACESTATUS ==
- Remarks:
-
- The '^status' command prints the loaded changeset on a workspace and gets
- the changed elements inside the workspace.
-
- This command can be used to show the pending changes in a workspace; the
- type of changes that can be searched can be modified by using the command
- parameters. By default, all changes are displayed, be they controlled
- or local.
-
- The percent of similarity parameter '--^percentofsimilarity' (-^p) is used
- by the locally moved search to decide if two elements are the same item.
- The default value is 20% but it can be adjusted.
-
- It is possible to show workspace changes grouped by client changelists.
- The '^default' changelist includes the changes that are not included in
- other changelists. That being said, the changes the default changelist
- will show depends on the search types flags specified.
-
- Showing changes grouped by changelists requires showing controlled
- changes too (items with status equal to '^added', '^checkout', '^copied',
- '^replaced', '^deleted', or '^moved'). So, the '--^controlledchanged' option
- will be automatically enabled when changelists are shown.
-
- The default encoding for XML output is utf-8.
-
- By default, this command will print current directory relative paths,
- unless the '--^machinereadable' or '--^short' flags are specified. If
- any of them are specified, the command will print absolute paths.
-
- If '--^xml' flag is specified, workspace root relative paths will
- be printed (unless the '--^fp' flag is also specified, printing
- absolute paths instead).
-
- Examples:
-
- cm ^status
- (Prints the working changeset and also all item types changed in the
- workspace, except the ignored ones.)
-
- cm ^status --^controlledchanged
- (Prints the working changeset and also the items that are checkedout, added,
- copied, replaced, deleted, and moved.)
-
- cm ^status --^added
- (Prints only the working changeset and the added items inside the workspace.)
-
- cm ^status c:\workspaceLocation\code\client --^added
- (Prints the working changeset and the added items under the specified path
- recursively.)
-
- cm ^status --^changelists
- cm ^status --^changelist
- (Shows all the workspace changes grouped by client changelists.)
-
- cm ^status --^changelist=pending_to_review
- (Shows the changes on the changelist named 'pending_to_review'.)
-
- cm ^status --^changelist=default --^private
- (Shows the changes in the 'default' changelist, showing private items, along
- with items with controlled changes, if any.)
-
- cm ^status --^short --^changelist=pending_to_review | cm ^checkin -
- (Checkins the changes in the changelist 'pending_to_review'.)
-
- cm ^status C:\workspaceLocation --^xml=output.xml
- (Gets the status information in XML format and using utf-8 in the file
- output.xml.)
-
- cm ^status --^ignored
- (Shows all ignored items.)
- Output:
- /main@myrepo@local (^cs:2 - ^head)
- ^Added
- Status Size Last Modified Path
-
- ^Ignored 0 bytes 19 seconds ago out\app.exe
- ^Ignored 48 seconds ago src
- ^Ignored 0 bytes 48 seconds ago src\version.c
-
- cm ^status --^ignored --^cutignored
- (Shows ignored files whose parent directory is not ignored and ignored
- directories but not their contents.)
- Output:
- /main@myrepo@local (^cs:2 - ^head)
- ^Added
- Status Size Last Modified Path
-
- ^Ignored 0 bytes 19 seconds ago out\app.exe
- ^Ignored 48 seconds ago src
-
- == CMD_DESCRIPTION_XLINK ==
- Creates, edits, or displays details of an Xlink.
-
- == CMD_USAGE_XLINK ==
- Usage:
-
- cm ^xlink [-^w] [-^rs] <xlink_path> / (<csetspec> | <lbspec> | <brspec)>
- [<expansion_rules>[ ...]]
- (Creates an Xlink.)
-
- cm ^xlink [-^rs] <xlink_path> /<relative_path> (<csetspec> | <lbspec> | <brspec>)
- [<expansion_rules>[ ...]]
- (Creates a readonly partial Xlink pointing to /<relative_path> instead of
- the default root / .)
-
- cm ^xlink -^e <xlink_path> (<csetspec> | <lbspec> | <brspec>)
- (Edits an Xlink to change the target specification.)
-
- cm ^xlink -^s|--^show <xlink_path>
- (Shows the Xlink information including the expansion rules.)
-
- cm ^xlink -^ar|--^addrules <xlink_path> <expansion_rules>[ ...]
- (Adds the given expansion rules to the Xlink).
-
- cm ^xlink -^dr|--^deleterules <xlink_path> <expansion_rules>[ ...]
- (Removes the given expansion rules from the Xlink).
-
- xlink_path This is the directory in the current workspace where
- the linked repository will be mounted (when creating an
- Xlink) or is mounted (when editing an Xlink).
- csetspec The full target changeset specification in the remote
- repository.
- This determines what version and branch is loaded in the
- workspace for the linked repository.
- (Use 'cm ^help ^objectspec' to learn more about changeset
- specs.)
- lbspec The full label specification in the remote repository.
- (Use 'cm ^help ^objectspec' to learn more about label
- specs.)
- brspec The full branch specification in the remote repository.
- This uses the current changeset where the specified
- branch is pointing to. (Use 'cm ^help ^objectspec' to
- learn more about branch specs.)
- -^e Edits an existing Xlink to change the target changeset
- specification.
- -^s | --^show Shows information about the selected Xlink.
- -^ar | --^addrules Adds one or more expansion rules to the selected Xlink.
- -^dr | --^deleterules Deletes one or more expansion rules from the selected
- Xlink.
- expansion_rules To specify one or more expansion rule. Each expansion
- rule is a pair branch-target branch:
- ^br:/main/fix-^br:/main/develop/fix
-
- Options:
-
- -^w Indicates that the Xlink is writable. This means that
- the contents of the target repository can be modified
- through branch autoexpansion.
- -^rs Relative server. This option allows creating a relative
- Xlink that is independent of the repository server. This
- way, Xlinks created in replicated repositories in
- different servers will be automatically identified.
-
- == CMD_HELP_XLINK ==
- Remarks:
-
- This command creates an Xlink to a given changeset. By default, a read-only
- Xlink is created. This means that the contents loaded in the workspace
- inside the Xlink cannot be modified. To be able to make changes in the
- Xlinked content, create a writable Xlink instead (using the '-^w' option).
-
- It is possible to use a simplified syntax of the command when editing the
- target changeset of an Xlink. This way, the only required parameter is the
- new target changeset. The rest of parameters of the Xlink will not be
- modified.
-
- Branch auto-expansion:
-
- When a change is made in any writable-xlinked repositories ('-^w' option), a
- new branch needs to be created in the target repository. The name of the
- new branch is based on the checkout branch defined in the top-level
- repository. To determine the name of the branch to use, these rules apply:
-
- 1) A check is made to see if a branch with the same full name exists
- in the target repository:
- - If it exists, this is used as the checkout branch.
- - If it does not exist, the branch name is built this way:
- - Name of the branch of the target Xlinked changeset + short name of
- the checkout branch (last part).
- - If this branch exists, it is used as the checkout branch.
- - Otherwise, the branch is created and the branch base is set to the
- Xlinked changeset.
-
- 2) A new version of the Xlink is created in the branch on the parent
- repository pointing to the new changeset in the Xlinked repository.
-
- Finally, the complete Xlink structure is kept up to date with the latest
- changes in the right versions.
-
- Examples:
-
- cm ^xlink code\firstrepo / 1@first@localhost:8084
- (Creates an Xlink in folder 'firstrepo' in the current workspace where the
- changeset '1' in the repository 'first' will be mounted.)
-
- cm ^xlink opengl\include /includes/opengl 1627@includes@localhost:8087
- (Creates a readonly partial Xlink in directory 'opengl\include' in the
- current workspace where the path '/includes/opengl' in changeset '1627' in
- the repository 'includes' will be mounted as root. It means that whatever
- is inside '/includes/opengl' will be mounted in 'opengl\include' while the
- rest of the repository will be ignored.)
-
- cm ^xlink -^w -^rs code\secondrepo / ^lb:LB001@second@localhost:8084
- (Creates a writable and relative Xlink in folder 'secondrepo' in the
- current workspace where the label 'LB001' in the repository 'second' will
- be mounted.)
-
- cm ^xlink code\thirdrepo / 3@third@localhost:8087 ^br:/main-^br:/main/scm003
- (Creates an Xlink in folder 'thirdrepo' in the current workspace where the
- changeset '3' in the repository 'third' will be mounted.)
-
- cm ^xlink -^e code\secondrepo ^br:/main/task1234@second@localhost:8084
- (Edits the Xlink 'code\secondrepo' to change the target repository by
- linking the branch 'main/task1234' in the repository 'second'.)
-
- cm ^xlink --^show code\thirdrepo
- (Shows information of the Xlink 'code\thirdrepo' including its expansion
- rules if exist).
-
- cm ^xlink -^ar code\secondrepo ^br:/main-^br:/main/develop ^br:/main/fix-^br:/main/develop/fix
- (Adds two expansion rules to the xlink 'code\secondrepo'.)
-
- cm ^xlink -^dr code\secondrepo ^br:/main/fix-^br:/main/develop/fix
- (Deletes the expansion rule from the xlink 'code\secondrepo').
-
- == CMD_USAGE_AUTOCOMPLETE ==
- Usage:
-
- cm ^autocomplete ^install
- (Installs 'cm' command completion in the shell.)
-
- cm ^autocomplete ^uninstall
- (Uninstalls 'cm' command completion from the shell.)
-
- cm ^autocomplete --^line <shell_line> --^position <cursor_position>
- (Returns autocomplete suggestions for 'shell_line' to be inserted at
- 'cursor_position'. This command is not intended to be used by the final
- user, but it is documented in case you want to extend autocompletion
- support for your shell of choice.)
-
- shell_line The line the user has written into the shell when the
- autocompletion was requested.
- In Bash, it is at the COMP_LINE environment variable.
- In PowerShell, it is at the $wordToComplete variable.
- cursor_position The position of the cursor when the autocompletion was
- requested.
- In Bash, it is at the COMP_POINT environment variable.
- In PowerShell, it is at the $cursorPosition variable.
-
- == CMD_DESCRIPTION_API ==
- Starts a local HTTP server that listens for REST API requests.
-
- == CMD_USAGE_API ==
- Usage:
-
- cm ^api [(-^p|--^port)=<portnumber>] [(-^r|--^remote)]
-
- Options:
-
- -^p | --^port Tells the server to listen on port <portnumber>
- instead of 9090.
-
- -^r | --^remote Allows incoming remote connections. This means
- connections that come from other hosts instead of the
- local one.
-
- == CMD_HELP_API ==
- Remarks:
-
- The cm ^api command allows programmers to perform Plastic client operations
- in their machines.
- Read the Plastic SCM API Guide for more information:
- https://www.plasticscm.com/documentation/restapi/plastic-scm-version-control-rest-api-guide
-
- By default, the API listens for local connections only, on port 9090.
-
- Press the Enter key to stop the server.
-
- Examples:
-
- cm ^api
- (Starts the API listening on port 9090, local connections only.)
-
- cm ^api -^r
- (Starts the API listening on port 9090, allowing any incoming connection.)
-
- cm ^api --^port=15000 -^r
- (Starts the API listening on port 15000, allowing any incoming connection.)
-
- == CMD_DESCRIPTION_CONFIGURECLIENT ==
- Configures the Plastic SCM client for the current machine user to work with a default server.
-
- == CMD_USAGE_CONFIGURECLIENT ==
- Usage:
- cm ^configure [--^language=<language> --^workingmode=<mode> [AuthParameters]
- --^server=<server> [--^port=<port>]] [--^clientconf=<clientconfpath>]
-
- --^language Available languages:
- en (English)
- es (Spanish)
-
- --^workingmode Available users/security working modes:
- NameWorkingMode (Name)
- NameIDWorkingMode (Name + ID)
- LDAPWorkingMode (LDAP)
- ADWorkingMode (Active Directory)
- UPWorkingMode (User and password)
- SSOWorkingMode (Single Sign On)
-
- AuthParameters Auth parameters (only for ^LDAPWorkingMode and ^UPWorkingMode):
- --^user=<user>
- --^password=<password>
-
- Single Sign On parameters (only for ^SSOWorkingMode):
- --^user=<user>
- --^token=<token>
-
- --^server Plastic SCM server IP / address
-
- --^port Plastic SCM server port
- (port optional for Cloud servers)
-
- --^clientconf File path used to create the configuration file (optional)
- Argument can be a full path, a filename or a directory.
- If this parameter is not specified, the default directory for
- 'client.conf' file would be:
- * '%LocalAppData%\plastic4' on Windows
- * '$HOME/.plastic4' on linux/macOS
-
- Examples:
-
- --^clientconf=c:/path/to/myclient.conf
- (Specified path will be used to create the client configuration file)
-
- --^clientconf=myclient.conf
- (File myclient.conf inside default config directory will be used)
-
- --^clientconf=c:/exisitingDirectory
- (Default filename, client.conf, in specified directory will be used)
-
- == CMD_HELP_CONFIGURECLIENT ==
- Remarks:
-
- The cm ^configure command cannot be used on Cloud Edition or DVCS Edition of Plastic SCM.
- Use 'plastic --configure' instead.
-
- Examples:
-
- cm ^configure
- (runs the interactive Plastic SCM client configuration command)
-
- cm ^configure --^language=^en --^workingmode=^LDAPWorkingMode --^user=^jack --^password=^01234 \
- --^server=^plastic.mymachine.com --^port=^8084
- (configures the Plastic SCM client with the specified parameters and creates the 'client.conf'
- configuration file in the default directory).
-
- cm ^configure --^language=^en --^workingmode=^NameWorkingMode --^server=^plastic.mymachine.com \
- --^port=^8084 --^clientconf=^clientconf_exp.conf
- (configures the Plastic SCM client with the specified parameters and creates the 'client.conf'
- configuration file in the specified path).
|