vss操作说明
vss命令行
一、环境变量配置
“我的电脑”-》“属性”-》“高级”-》“系统环境变量”
1) 添加追加环境变量 名称为:Path;值为:VSS应用程序所在目录 例如:D:\Program files\Microsoft Visual Sourcesafe。
注:也就是VSS安装文件 ,SSEXP.EXE所在的路径:如 ;E:\Vss\win32
2) 添加新建环境变量 名称为:SSDIR 值为:VSS源代码数据库所在目录 例如:F:\SourceSafe。若VSS源代码数据库在局域网的其他电脑,则需要将VSS源代码文件夹设置共享文件夹,然后将SSDIR环境变量设置为:\\server\sourcesafe。
ODS所用的VSS服务器路径:\\10.220.2.157\srcb_vss\
如图:
3) 命行中输入ss ,如果执行成功,则说明环境变量设置成功。
输入ss命令后提示输入用户名找不到的话,继续设置用户名SSUSER 和密码 sspwd的环境变量名,变量值为 VSS登录的用户名和密码,如
如:
到此整个配置完成
二、SS命令使用
使用ss Get命令获得源代码
1)在命令行中定位当前目录到想要下载源代码所在的目录。
2)在命令行中执行 ss Get $/[project] –R,此命令会递归获得项目的完整代码 [project]替换VSS中的项目。
3)在命令行中执行 ss Get [file],此命令可以获得当前项目中指定的文件 [file] 替换为VSS项目中的文件。
使用 ss Chekout命令签出源代码
1)在命令行中执行 ss Checkout $/[project]/[file],此命令会将指项目的指定文件签出到当前命令行所在的目录。
2)在命令行中执行 ss Checkout -R $/[project],此命令将会递归签出项目所有文件。
3)在命令行中执行 ss Checkout [file1] [file2],此命令将可以同时签出多个文件。
使用 ss Checkin 命令签出源代码
1)在命令行中执行 ss Checkin [file],此命令将可以指定的文件签入。
2)在命令行中执行 ss Checkin * -P ,此命令将可以签入所有签出的文件。
三、一些通用的命令行选项:
Option |
Description |
-C |
为指定项(可以是多项)做注释 (Dir例外) |
-O |
重定向命令 |
-V |
操作某项的指定版本 |
-R |
Perform a command recursively. |
-S |
Turn SmartMode on or off for the command. |
-G |
Change the way the Get command works on any file retrieved to the local drive. |
-W |
指明本机副本是否只读(使用此参数,表示writable) |
-N |
在长短文件名两种模式间切换 |
-I- |
任何环境下都不提示输入 |
-Y |
指定用户名和密码 |
-?, -H |
两个参数的作用都是获得在线的帮助 |
四、一些常用命令:
1.设置vss命令行程序ss.exe的路径:
PATH=%PATH%;X:\……\Microsoft Visual Studio\Common\VSS\win32
2.设置vss数据库的路径(注意):
set ssdir=\\cmserver\Project
3.设置vss的登录用户名:
set ssuser=yourAccount
4.设置vss的登录密码:
set sspwd=yourPwd
5.获取任一目录的任一文件到本机(下例将$/ASP.Net/DataGridTest/index.aspx文件get到D:\tmp目录)
ss get -GLD:\tmp $/ASP.Net/DataGridTest/index.aspx
(ss get, -GLpath Copies a file to the specified folder, not to the current or working folder. )
6.分屏显示目录ASP.Net中的所有文件和文件夹(包括子文件):
ss dir $/ASP.Net -R|more (另外,有-I -V 两个参数,作用未知)
7.vss命令行是大小写不敏感的;命令行中的命令不需要全名,同sql一样,只要是可以识别的名字及可,如Dir就是directory的缩写;
(遵守UNC通用命名规则,Universal Naming Convention)
8.命令中有空格时,用双引号括起整个选项,如用ss CP "-Yeric Lv",eric123 而不用ss CP -Y"eric lv",eric123,
9.启动图形界面:ssexp -s\\gqa-eric-lv\vss
10.ss命令中,/表示VSS的当前目录,$/表示根目录,常用操作命令如下:
ss Add TEST.C "My long filename.H" ,把TEST.C和"My long filename.H"两个文件添加到当前项目;
ss Add -R *,把当前目录的所有文件及文件夹(包括子文件夹、文件)添加到当前项目;
ss ADD -D- *.DLL,添加当前目录的所有DLL文件到当前项目,但不保留VSS上的历史文件(以节省空间);
ss Checkout TEST.C TEST.H Checkout当前项目中的两个文件
ss Checkout $/TESTDATA/TEST.C Checkout指定项目中的文件
ss Checkout -R $/TESTDATA 循环Check项目$/TESTDATA
ss Comment TEST.C -V5 改变TEST.C的版本号为5的版本注释
ss Comment TEST.C 改变TEST.C的最新版本的注释
ss Comment $/TESTDATA 改变项目$/TESTDATA的注释
ss Create $/WORD VSS的根目录下,创建项目WORD
ss Create WORD VSS的当前目录下,创建项目WORD
ss Cp $/WORD 设置$/WORD为Current Project
ss Cp .. 跳转到当前项目的父项目
ss Delete $/PRJ/TEST.C 删除文件TEST.C (delete命令删除的文件,可以用直接add命令回复,如Add test.C)
ss Delete $/PRJ 删除项目 (不可以有两个同名的文件被delete,因为没有真正删除)
ss -S Delete *.* 删除所有文件,-S表示删除VSS上的文件之后,删除本机文件
ss Destroy $/PRJ/TEST.C 持久删除文件(不可恢复)
ss Destroy $/PRJ 持久删除项目
11.vss Check Out单个文件:
ss Checkout $/vssPath/fileName
12.vss Check In 单个文件:
ss checkin $/vssPath/fileName -C"your comment"
13.vss Undo Check Out单个文件:
ss Undocheckout $/vssPath/fileName
14.vss Check Out整个工程包含项目的所有子项目(子目录)(recursively):
ss Checkout $/vssPath/ -R
15.vss Check In 整个工程包含项目的所有子项目(子目录)(recursively):
ss checkin $/vssPath/* -R -C"your comment"
16.取单个文件最新版本:
ss Get $/vssPath/fileName
17.取整个工程到本地 :
ss Get $/vssPath/* -R
18.取vss服务器上的文件到指定地方(注意"-GL"后面没有空格!) :
ss get -GLX:\dest $/vssPath/fileName.txt
19.其他的更改操作有:
label,merge,move,password,purge,recover,rename,rollback,share,undocheckout,workfold,branch等命令,这些命令会改变VSS数据库的内容或者环境。
20.VSS命令行中的比较/查找/显示等不改变数据库和环境的命令:
diff,dir,FileType,Get,help,history,links,paths,project,properties,status,view,whoami
21.显示最近的Version,Label信息:SS properties
22.显示Checkout的文件:SS Status
23.按“任务号”的label检索(get)出对应的程序版本,且希望get出的程序是带路径结构目录的。
ss get $/Pro/*?* -R -vlID123
要点1:通配符除*?*外,**(2个以上都)可以,但*不行
要点2:v和vl有区别,前者是version号,vl才是label号
最新文章
- [vijos P1040] 高精度乘法
- css内容样式属性
- Collection 集合类
- MyBatis mapper文件中的变量引用方式#{}与${}的差别
- HDU 1253 胜利大逃亡
- Query通过Ajax向PHP服务端发送请求并返回JSON数据
- linux rc.sysinit文件详解
- ElasticSearch大数据分布式弹性搜索引擎使用—从0到1
- EF中加载实体的方式
- 【set&;&;sstream||floyed判环算法】【UVa 11549】Calculator Conundrum
- js通过添加随机数的方法,解决多张图片加载时由于缓存导致图片无法正确显示的问题
- PHP--高级算法--面试
- mysql允许所有机器访问
- 2014年GDG西安 -- DevFest Season1
- jvm gc 算法
- streamsets k8s 部署试用
- Tomcat 启动流程
- Oracle收购Apiary来加强其API集成云
- js中如何删除json对象的某一个选项
- python如何优雅判断类型