[ SOS ] 版本控制工具 笔记
2024-10-20 15:17:29
https://www.cnblogs.com/yeungchie/
soscmd
创建工作区
soscmd newworkarea $serverName $projectName [$path]
- 常用这种
soscmd newworkarea SERV1 PRJ1 -here -lmian -LCACHED
在当前路径下,启用cache
,创建 SERV1服务器
PRJ1项目
main分支
的工作区
populate
populate 当前整个工作区
soscmd populate .
更新当前工作区
soscmd update
branch
查看当前 branch
soscmd query rso
查看所有 branch
soscmd query $Server $project branches
切换 branch
soscmd update -l$branchName
soscmd update -l$branchName -rso
创建文件(夹)
soscmd create $fileName
checkout
soscmd co $fileName
checkin
soscmd ci $fileName
soscmd ci $fileName -aLog='type some logs' # 同时输入一些日志 便于批处理
取消 checkout
soscmd disc $fileName
soscmd disc -F $fileName # 强制取消 用于对文件有改动时
获取文件历史记录
soscmd history $fileName
工作区对象 选择/状态
选择 select
soscmd select [ -opts ] [ $fileName ]
状态 status
- 获取本地工作区的
soscmd status [ -opts ] [ $fileName ]
opts ...
- sco
被当前工作区 checkout 的对象 - scm
被当前工作区 checkout 并修改 的对象 - scnm
被当前工作区 checkout 未改动 的对象 - slk
被其他工作区或其他用户 checkout 的对象 - snt
当前工作区需要 update 的对象 - sp
当前工作区已经 populate 的对象 - sunp
当前工作区未 populate 的对象 - sne
当前工作区需要 populate 但缺失的对象 - snvp
当前工作区标记 never populate 的对象 - sunm
饭前工作区不存在 SOS 仓库中的文件 ( 仅用于 select 命令 ) - sall
所有对象 - sor
指定多个选项的判断条件为 OR - sor
指定多个选项的判断条件为 AND
对象状态
objstatus / nobjstatus
- 获取远程仓库的
这两个的主要区别在于返回数据是 单行/多行 的形式
sosadmin
获取所有 server 名字
sosadmin list
获取 server 所有 project 名字
sosadmin projects $serverName
启动一个 server
sosadmin startup $serverName
关闭一个 server
sosadmin shutdown $serverName
install
.bashrc
export CLIOLMD_LICENSE_FILE <LICENSEINFO>
export CLIOSOFT_DIR "/opt/eda/cliosoft/SOS"
export PATH $CLIOSOFT_DIR/bin:$PATH
export GDM_USE_SHLIB_ENVVAR 1
export LD_LIBRARY_PATH $CLIOSOFT_DIR/lib:$CLIOSOFT_DIR/lib/64bit:$LD_LIBRARY_PATH
Virtuoso 集成
setup_cds_libmgr_menu
.cdsinit
loadi(strcat(getShellEnvVar("CLIOSOFT_DIR") "/scripts/cds_sosviadfII.il"))
cdsLibMgr.il
loadi(strcat(getShellEnvVar("CLIOSOFT_DIR") "/scripts/cdsLibMgr.il"))
提取参数
- Get SOS objstatus parameter by attribute name with RegExp
# example
my $path = '.';
my $attr = 'WaRoot';
my $obj = `soscmd objstatus -gaAll $path`;
$obj =~ s/}\s+{/} {/g;
if($obj =~ /{$attr\s+({?\S+(\s?\S+)*}?)}/){
my $value $1;
$value =~ s/^{|}$//g;
return $value;
}
else{
return $value;
}
最新文章
- 16.iOS APP图标和启动画面尺寸
- python-getattr
- 【转】 iOS 开发之静态库.a和动态库详解 -- 不错
- Maven Dependency Scope用法
- ISBN
- linux账户管理(centos)
- java 匿名对象,内部类,修饰符,代码块
- Python:运算类内建函数列举
- flask-login模块
- c函数指针
- java基础学习总结——异常处理
- java中年月日的加减法,年月的加减法使用
- javascript strict mode
- 让input变成不可编辑状态的方法
- Azure 上 Linux 虚拟机 Mac 地址的持久化
- BZOJ1257:[CQOI2007]余数之和——题解+证明
- USE [EPPM] [dbo].[REFRDEL_CLEANUP]
- VSS配置
- JQuery中的text(),html()和val()区别
- BZOJ3622(容斥+dp)
热门文章
- zabbix图形中文乱码
- Discuz!X系列全版本后台sql注入复现
- 从零开始,开发一个 Web Office 套件(12):删除文字 &; 回车换行
- dpwwn-01
- Spring核心思想:IOC(控制反转)、DI(依赖注入)和AOP(面向切面编程)
- loj2985「WC2019」I 君的商店(二分,思维)
- 数据库篇:mysql日志类型之 redo、undo、binlog
- Blazor 003 : Razor的基础语法
- mysql 客户无感知迁移_亿级账户数据迁移,不用数据库工具还能怎么搞?
- springBoot 多配置文件切换之profile