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;
}

[ SOS ] 版本控制工具 笔记的更多相关文章

  1. Git 版本控制工具(学习笔记)

    GIT(分布式) 一.Git 初始版本控制工具 1. 安装Git Ubuntu系统下,打开shell界面,输入: sudo apt-get install git-core  之后回车输入密码,即可完 ...

  2. 版本控制工具--svn和git的使用(二) -----SVN的操作

    SVN的使用 开头: 对于svn的详解,我不是很熟,只是用过svn的客户端,没使用过服务端,在这里我只是简单说一下在svn的客户端怎么拉取代码,提交代码和修改冲突等等.svn的客户端我在Mac中用的s ...

  3. 版本控制工具Git工具快速入门-Linux篇

    版本控制工具Git工具快速入门-Linux篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.版本管理系统的介绍 1>.版本管理系统的特点 1.1>.自动生成备份: ...

  4. 版本控制工具Git工具快速入门-Windows篇

    版本控制工具Git工具快速入门-Windows篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 最近在学习Golang语言,之前的开发环境在linux上开发的,后来由于办公用的是w ...

  5. 版本控制工具比较-CVS,SVN,GIT

    首先介绍几个版本控制软件相互比较的重要依据: a.版本库模型(Repository model):描述了多个源码版本库副本间的关系,有客户端/服务器和分布式两种模式.在客户端/服务器模式下,每一用户通 ...

  6. 最好用的Unity版本控制工具

    自从来到现在的公司,负责Unity组开发以来,尝试了各种版本控制工具.从一开始的TortoiseSVN,到后来为了追求逼格使用Git,尝试了Github客户端和SourceTree,发现都有各种不爽. ...

  7. [.net 面向对象程序设计进阶] (23) 团队开发利器(二)优秀的版本控制工具SVN(上)

    [.net 面向对象程序设计进阶] (23) 团队开发利器(二)优秀的版本控制工具SVN(上) 本篇导读: 上篇介绍了常用的代码管理工具VSS,看了一下评论,很多同学深恶痛绝,有的甚至因为公司使用VS ...

  8. 【Java EE 学习 43】【SVN版本控制工具】【CVS版本控制工具】

    一.SVN SVN服务器下载地址:https://subversion.apache.org/ 1.什么是版本控制:版本控制是维护工程蓝图的标准做法,能追踪工程蓝图从诞生一直到定案的过程.是一种记录若 ...

  9. Git版本控制工具学习

    Git代码管理工具学习 分布式管理工具:git 相比较svn它更加的方便,基本上我们的操作都是在本地进行的. Git文件的三种状态:已提交,已修改,以暂存. 已提交:表示文件已经被保存到本地数据库. ...

随机推荐

  1. 微信小程序授权获取手机号

    wxml: <text>pages/logins/logins.wxml</text> // <button open-type="getPhoneNumber ...

  2. https 加密原理

    转载于 https://www.cnblogs.com/imteck4713/p/12016313.html 补充: <图解HTTP> 1.引言 随着互联网安全意识的普遍提高,对安全要求稍 ...

  3. Java IDE的历史变迁及idea的使用

    Java开发工具的历史变迁 JCreator Jcreator是荷兰的Xinox Software公司开发的一个用于Java程序设计的集成开发环境(IDE),该公司成立于2001年: 官方网站:htt ...

  4. LGP6240题解

    题解 我们可以发现,背包有结合律. 也就是先加入元素 \(a\) 再加入元素 \(b\) 和 \(c\),与先加入元素 \(a\) 后再与只有元素 \(b\) 和元素 \(c\) 的背包合并,得到的背 ...

  5. ElasticSearch7.3 学习之Mapping核心数据类型及dynamic mapping

    1.mapping的核心数据类型以及dynamic mapping 1.1 核心的数据类型 string :text and keyword,byte,short,integer,long,float ...

  6. Linux企业常用命令详解

    cat :查看 cat [-AbeEnstTuv] [--help] [--version] fileName 常用参数: -n :由 1 开始对所有输出的行数编号 -b :和 -n 相似,对于空白行 ...

  7. 创建一个 20G 的分区,并格式化为 ext4 文件系统

     创建一个 20G 的分区,并格式化为 ext4 文件系统,并完成如下要求: (1)block 大小为 2048,预留空间 20%,卷标为 MYDATA #fdisk /dev/sdb -->n ...

  8. 【flareon6】 overlong-通过动调改内存修改程序

    程序分析 无壳,32位程序 运行后结果 程序比较简单一共三个函数 根据题目和运行结果可以看出来是a3太小了,没法完全解密密钥 解决该问题可以通过写脚本或动调解决 方法一:动调改内存 定位到a3入栈的位 ...

  9. redis事务及相关命令介绍

    redis事务及相关命令介绍 一.概述:和众多其它数据库一样,Redis作为NoSQL数据库也同样提供了事务机制.在Redis中,MULTI/EXEC/DISCARD/WATCH这四个命令是我们实现事 ...

  10. Java 中计算注意!!!

    * 使用BigDecimal需要注意的事项:  * 1.两个BigDecimal值不能使用" +, -, *, / " 进行加减乘除,要使用" add, substrac ...