[.net 面向对象程序设计进阶] (22) 团队开发利器(一)简单易用的代码管理工具VSS
[.net 面向对象程序设计进阶] (22) 团队开发利器(一)简单易用的代码管理工具VSS
本篇要点:在进阶篇快要结束的时候说说源代码管理器,我们的开发,不是一个人可以完成的事,团队协作很重要,而且要对产品生命周期和开发过程进行规范管理才行。那么源代码管理器是必不可少的。本篇主要介绍一款非常简单易用,且有一定普及率的源代码管理工具VSS.
1.VSS简介
名称:Visual Source Safe( 简称 VSS )
厂商:微软(起初为一家小公司因获奖被微软收购)
功能:具有基本的share (共享 ) 、 branch( 分支)和合并( merge) 功能
优点:简单易用,普及率高(目前仍有大量开发团队使用),免费没有用户数量限制。
缺点:安性全一般。不可读,可读,可读 / 写 , 可完全控制四级权限,但是文件夹要完全共享给用户才能进入,用户可以删除文件这是最大缺陷,此外,VSS的Internet访问功能配置比较麻烦,使用异地开发大多不选择VSS。
升级:微软收购后升级到VSS 2005以后,再没有进行进升级。目前微软已经有新的源代码管理工具出来,VSS基本不再更新。
推荐:★★★ (小型项目或对代码安全要求不太高的团队可以使用)
2.VSS安装及使用
下面以VSS2005 中文版本安装为例,安装包比较好找,目前没有正式的中文版本,但有汉化包,下面我提供一个下载地址:
VSS2005安装包+汉化包 :http://www.cr173.com/soft/13212.html
2.1安装
直接点“下一步”,一路完成,中间没有什么设置,在选择的时候有两个版本,一个是“Full”完整模式,一般服务器端装这个模式,客户端只需要装“Custom”客户模式就可以了。
安装完成,如果是服务器模式,开始菜单有两个如下图:

2.2 汉化
安装完成,如果喜欢用中文版的同学,可以选择汉化,运行汉化补丁VSS.2005.汉化补丁.exe 选择此前安装的VSS目前,完成安装后,打开VSS程序工具下的选项设置,tools - option -international setteings;打开如下图的窗口,选择中文,重启VSS,即可完成中文版,汉化后,仍有部分是英文,但不会影响我们使用。

3.VSS服务器端配置
安装完成之后,我们先看一下服务器端的使用。
3.1 新建配置库
用管理员用户运行 Visual SourceSafe Administrator,文件-新数据库
打开新建数据库配置窗口,点“下一步”选择服务器存放路径。

下一步,给我们新建的数据库取个名字

继续下一步

在这里比较重要,有两种控制方式可供选择,第一种,仅支持一个人对文件修改,修改过程中文件锁定。第二种允许多人修改。
点击“下一步”完成数据库创建。

完成后,会有一个提示,是否要使用windows自带的权限功能,我们可以修改所在的目录权限控制。

可以设置如下:
A.设置文件夹为共享;B。去除everyone用户组访问权限;C.设置数据的用户;
注意:一定要将目录设置为网络共享目录,否则客户端无法找到并添加这个数据库,vss文件共享的端口是445,注意杀毒软件等不要拦截此端口。
3.2 修改Admin密码
用管理员用户运行 Visual SourceSafe Administrator,选中“管理员用户”菜单 “用户-更改密码”

管理员Admin初始密码为空,第一次修改,无需填空旧密码。其他用户密码更新同上。
3.3 新建用户
用管理员用户运行 “Visual SourceSafe Administrator”中“用户 -增加用户”

输入用户和密码,即可创建,这里有一个 “只读”,如果选中,则此用户只有只读权限。创建后,仍然可以通过用户修改来对权限和密码进行更改。
3.4 文件夹权限控制
可以对新增加的用户,来指定可以读写那些文件夹
也可以对项目中的文件夹,来指定允许读写的用户

3.5登录设置
配置库新建好后,默认客户端登录是只认客户端操作系统登录的用户名,不用输密码,可以修改,在VSS管理工具中,进入 工具》选项,取消“使用网络用户名登录”选择,就可以了,这样,每次进入,都要求强制输入用户名和口令,算是一个安全措施吧。
3.6数据库检查
VSS使用过程中由于网络等原因,可能造成部分信息出错,这时需要运行数据库检查工作。
注意:检查时,所有VSS用户要断开连接
检查工具位于VSS安装目录下,叫analyze.exe,只能通过命令行运行,命令格式为:analyze.exe -f 【vss数据库所在目录】
如: “D\Program Files\Microsoft Visual SourceSafe\analyze.exe” -f E:\Dtt_vss\Data
检查完后,将提示哪些错误被修复。
3.7数据库备份
备份数据库,也需要所有用户断开连接,操作如下:

备份选择:将项目存档
恢复选择:恢复项目
3.8锁定数据库

锁定后,所有用户强制断开,并且不能连接,直至解除锁定。
3.9设置vss日志
控制台-工具-选项-常规 -“在此日志文件中记录所有操作 ”如图:

3.10删除历史版本
VSS数据库理论上要小于4G,太大会异致速度下降。
减小的方法是:可以删除一些久远的版本,当然,删除前可以先备份。
具本参考聚如下:
A.制作一个备份,这个很重要,万一要查历史版本
B.使用VSS Administrator,Archive- Archive Projects
C.Archive Wizard 第一步,选中$这个Project
D.Archive Wizard 第二步,选中”Archive this version and older”在Version输入“YYYY-MM-DD”日期,即从这天以前的版本都不要了。
E.完成。VSS自己去删除配置项的历史版本了。
4.VSS用户端使用
4.1添加连接配置库
A.在客户端机器上打开 “Visual SourceSafe 浏览器”-“文件”
B.“打开SourceSafe数据库”,单击添加,弹出“添加SourceSafe数据库向导”,“下一步”选择现在数据库,单击“下一步”点“浏览”。输入服务器上数据库所在目标如:\\192.168.1.1\data( 如提示需要用户名和密码,输入后),选中“srcsafe.ini”打开。
C.“下一步”数据库连接名为默认,也可改,下一步,完成。这样我们就完成了在本机连接数据库了。
4.2客户端登录
A.打开“Microsoft Visual SourceSafe”

输入用户名密码即可。
4.3设置工作目录
这时我们要在本机电脑上设置一个工作目录,以后我们的源代码或获取的新版本文件,都会存放在此。

打开“设置工作目录”后,我们可以选择一个本地目录作为工作目录。
4.4新建文件夹和文件
我们可以在添加一些文件或文件夹到这VSS

4.5获取最新版本
注意:当您Get文件时,当前文件的一个只读COPY将放到您的工作文件夹中,这时,您对文件的任何操作都不能存入VSS项目。
为了get最新版本文件或项目:
A.选中您想操作的文件,您可以选择一个文件,多个文件或整个项目
B.在SourceSafe菜单中,单击“获取最新版本”
C.如果事先没有设置工作目录,在此会有一个提示,设置一下即可。
D.如果您在VSS设置中指定了显示Get Latest Version对面框,则VSS会显示它,单击OK ,VSS就完成了文件的COPY.
4.6操作文件
至此我们可以对文件进行,查看,增加,修改或删除操作 ,也可以对文件进行共享或查看历史改动等操作 ,就不一一说明了。
需要注意的是,改动文件或文件夹,文件会被签出,改动后右键签入,即可完成一次存档。
5.在Visual Studio下使用VSS开发
5.1 在VS中选择源代码管理插件

5.2指定Visual Studio的源代码管理环境
先打开VS,在工具,选项中,找到源代码管理器的环境设置,根据需要设置。

5.3 使用Vs2008(或10 13 都可以)+VSS进行开发
上面设置完成后,关闭VS和VSS,然后找到我们工作目录中的项目文件,双击用VS2008打开,会显示如下窗口:

登录以后,如下:

此至,我们可以进入团队开发模式了,注意文件签入前,一定要编译通过,否则给队友来带麻烦,完成后的文件,一定要及时签入。
一般情况下,下班前,一定要所有文件都是签入状态, 以免第二天上班,文件独占,别人使用不了。
6.本篇要点:
本篇只要介绍了一个非常简单实用的源代码管理工具VSS 2005,如果你的项目比较小型化,且对安全要求不是非常高,且不会在异地完成开发的情况下(VSS的internet访问功能不是很方便),可以选用轻量级的VSS来管理你的源代码。下一篇,我们介绍一款功能强大的支持异地开发的工具SVN.
==============================================================================================
<如果对你有帮助,记得点一下推荐哦,如有有不明白或错误之处,请多交流>
<对本系列文章阅读有困难的朋友,请先看《.net 面向对象编程基础》>
<转载声明:技术需要共享精神,欢迎转载本博客中的文章,但请注明版权及URL>
.NET 技术交流群:467189533 
==============================================================================================
[.net 面向对象程序设计进阶] (22) 团队开发利器(一)简单易用的代码管理工具VSS的更多相关文章
- [.net 面向对象程序设计进阶] (27) 团队开发利器(六)分布式版本控制系统Git——在Visual Studio 2015中使用Git
[.net 面向对象程序设计进阶] (26) 团队开发利器(六)分布式版本控制系统Git——在Visual Studio 2015中使用Git 本篇导读: 接上两篇,继续Git之旅 分布式版本控制系统 ...
- [.net 面向对象程序设计进阶] (26) 团队开发利器(五)分布式版本控制系统Git——图形化Git客户端工具TortoiseGit
[.net 面向对象程序设计进阶] (26) 团队开发利器(五)分布式版本控制系统Git——图形化Git客户端工具TortoiseGit 读前必备: 接上篇: 分布式版本控制系统Git——使用GitS ...
- [.net 面向对象程序设计进阶] (25) 团队开发利器(四)分布式版本控制系统Git——使用GitStack+TortoiseGit 图形界面搭建Git环境
[.net 面向对象程序设计进阶] (25) 团队开发利器(四)分布式版本控制系统Git——使用GitStack+TortoiseGit 图形界面搭建Git环境 本篇导读: 前面介绍了两款代码管理工具 ...
- [.net 面向对象程序设计进阶] (24) 团队开发利器(三)使用SVN多分支并行开发(下)
[.net 面向对象程序设计进阶] (24) 团队开发利器(三)使用SVN多分支并行开发(下) 本篇导读: 接上篇继续介绍SVN的高级功能,即使用分支并行开发.随着需求的不断变更,新功能的增加.特别是 ...
- [.net 面向对象程序设计进阶] (23) 团队开发利器(二)优秀的版本控制工具SVN(上)
[.net 面向对象程序设计进阶] (23) 团队开发利器(二)优秀的版本控制工具SVN(上) 本篇导读: 上篇介绍了常用的代码管理工具VSS,看了一下评论,很多同学深恶痛绝,有的甚至因为公司使用VS ...
- 设计与开发一款简单易用的Web报表工具(支持常用关系数据及hadoop、hbase等)
EasyReport是一个简单易用的Web报表工具(支持Hadoop,HBase及各种关系型数据库),它的主要功能是把SQL语句查询出的行列结构转换成HTML表格(Table),并支持表格的跨行(Ro ...
- [.net 面向对象程序设计进阶] (1) 开篇
[.net 面向对象程序设计进阶] (1) 开篇 上一系列文章<.net 面向对象编程基础>写完后,很多小伙伴们希望我有时间再写一点进阶的文章,于是有了这个系列文章.这一系列的文章中, 对 ...
- [.net 面向对象程序设计进阶] (13) 序列化(Serialization)(五) Json 序列化利器 Newtonsoft.Json 及 通用Json类
[.net 面向对象程序设计进阶] (13) 序列化(Serialization)(五) Json 序列化利器 Newtonsoft.Json 及 通用Json类 本节导读: 关于JSON序列化,不能 ...
- [.net 面向对象程序设计进阶] (19) 异步(Asynchronous) 使用异步创建快速响应和可伸缩性的应用程序
[.net 面向对象程序设计进阶] (19) 异步(Asynchronous) 使用异步创建快速响应和可伸缩性的应用程序 本节导读: 本节主要说明使用异步进行程序设计的优缺点及如何通过异步编程. 使用 ...
随机推荐
- CozyRSS开发记录12-MVVM,绑定RSS源和数据
CozyRSS开发记录12-MVVM,绑定RSS源和数据 1.引入MvvmLight MVVM最近貌似在前端那块也挺火的.据说,WPF的程序如果不用MVVM,那跟MFC和winform的,也没啥区别. ...
- Java EE之搭建论坛系统(使用JForum)
1.下载JForum开源压缩包: 网址:http://jforum.net/ (或者直接使用百度云中的压缩包) 解压,修改解压后文件下的\WEB-INF\config\database\mysql目 ...
- 返水bug-百威
NOOK(Y) CSBFB(1000000) off(Y) QQ(44460898) G(1) off1(Y) QQ1(451933084) G1(1) off2(Y) QQ2(462814677) ...
- ShowMessageFmt 用法
举例:ShowMessageFmt('n1:%x; n2:%x', [n1,n2]); 显示Params 为 array[integer] of TvarRec 进制表示 %o(8) print ...
- Node.js-中文分词【1】-node-segment
node-segment是基于盘古分词写的Node.js中文分词模块,鉴于盘古分词给我留下的好印象,我们在Node.js上选择了它 一.安装node-segment npm install -g se ...
- [转] 前后端分离开发模式的 mock 平台预研
引入 mock(模拟): 是在项目测试中,对项目外部或不容易获取的对象/接口,用一个虚拟的对象/接口来模拟,以便测试. 背景 前后端分离 前后端仅仅通过异步接口(AJAX/JSONP)来编程 前后端都 ...
- 简述TCP连接的建立与释放(三次握手、四次挥手)
在介绍TCP连接的建立与释放之前,先回顾一下相关知识. TCP是面向连接的运输层协议,它提供可靠交付的.全双工的.面向字节流的点对点服务.HTTP协议便是基于TCP协议实现的.(虽然作为应用层协议,H ...
- JNI使用问题记录
此文章包含Android JNI学习过程中的遇到的各种错误记录和学习总结. 1.错误:java.lang.UnsatisfiedLinkError: Native method not found: ...
- TDD测试驱动开发
TDD测试驱动开发 一.概念 TDD故名思意就是用测试的方法驱动开发,简单说就是先写测试代码,再写开发代码.传统的方式是先写代码,再测试,它的开发方式与之正好相反. TDD是极限编程的一个最重要的设计 ...
- weex逻辑控制
在WEEX中,有if 和 repeat 两种逻辑运算,需要注意的是,逻辑控制不能够作用于<template>这样的根节点. if 控制判断条件true/false直接对节点进行操作,if= ...