[.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的更多相关文章

  1. [.net 面向对象程序设计进阶] (27) 团队开发利器(六)分布式版本控制系统Git——在Visual Studio 2015中使用Git

    [.net 面向对象程序设计进阶] (26) 团队开发利器(六)分布式版本控制系统Git——在Visual Studio 2015中使用Git 本篇导读: 接上两篇,继续Git之旅 分布式版本控制系统 ...

  2. [.net 面向对象程序设计进阶] (26) 团队开发利器(五)分布式版本控制系统Git——图形化Git客户端工具TortoiseGit

    [.net 面向对象程序设计进阶] (26) 团队开发利器(五)分布式版本控制系统Git——图形化Git客户端工具TortoiseGit 读前必备: 接上篇: 分布式版本控制系统Git——使用GitS ...

  3. [.net 面向对象程序设计进阶] (25) 团队开发利器(四)分布式版本控制系统Git——使用GitStack+TortoiseGit 图形界面搭建Git环境

    [.net 面向对象程序设计进阶] (25) 团队开发利器(四)分布式版本控制系统Git——使用GitStack+TortoiseGit 图形界面搭建Git环境 本篇导读: 前面介绍了两款代码管理工具 ...

  4. [.net 面向对象程序设计进阶] (24) 团队开发利器(三)使用SVN多分支并行开发(下)

    [.net 面向对象程序设计进阶] (24) 团队开发利器(三)使用SVN多分支并行开发(下) 本篇导读: 接上篇继续介绍SVN的高级功能,即使用分支并行开发.随着需求的不断变更,新功能的增加.特别是 ...

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

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

  6. 设计与开发一款简单易用的Web报表工具(支持常用关系数据及hadoop、hbase等)

    EasyReport是一个简单易用的Web报表工具(支持Hadoop,HBase及各种关系型数据库),它的主要功能是把SQL语句查询出的行列结构转换成HTML表格(Table),并支持表格的跨行(Ro ...

  7. [.net 面向对象程序设计进阶] (1) 开篇

    [.net 面向对象程序设计进阶] (1) 开篇 上一系列文章<.net 面向对象编程基础>写完后,很多小伙伴们希望我有时间再写一点进阶的文章,于是有了这个系列文章.这一系列的文章中, 对 ...

  8. [.net 面向对象程序设计进阶] (13) 序列化(Serialization)(五) Json 序列化利器 Newtonsoft.Json 及 通用Json类

    [.net 面向对象程序设计进阶] (13) 序列化(Serialization)(五) Json 序列化利器 Newtonsoft.Json 及 通用Json类 本节导读: 关于JSON序列化,不能 ...

  9. [.net 面向对象程序设计进阶] (19) 异步(Asynchronous) 使用异步创建快速响应和可伸缩性的应用程序

    [.net 面向对象程序设计进阶] (19) 异步(Asynchronous) 使用异步创建快速响应和可伸缩性的应用程序 本节导读: 本节主要说明使用异步进行程序设计的优缺点及如何通过异步编程. 使用 ...

随机推荐

  1. How to use *args and **kwargs in Python

    Or, How to use variable length argument lists in Python. The special syntax, *args and **kwargs in f ...

  2. 【Cocos2d-x for WP8 学习整理】(5)文字显示全整理

    学习 Cocos2d-x 有一阵了,现在要做个小东西,第一步就遇到了文字展示的问题,于是想把可能遇到的问题统统整理一下.这一部分也不局限于wp8,全平台应该都是一个解决方案. 先在脑袋里大致想了一下, ...

  3. conda安装包

    前面讲了有关conda改变镜像提高安装速度,这里来解决很多实用C写的酷,在Windows下不好安装的解决方案 1. 寻找wheel预编译文件 没有的话 2.使用conda命令安装 没有该包的话 3.实 ...

  4. echarts之tooltip-showContent

    当trigger:为'axis'时 tooltip : { trigger: 'axis', showContent:false } 当trigger:为'item'时 tooltip : { tri ...

  5. android开发:深入理解View(一):从setContentView谈起

    我们都知道 MVC,在Android中,这个 V 即指View,那我们今天就来探探View的究竟. 在onCreate方法中,可以调用this.setContentView(layout_id),来设 ...

  6. 面筋BD

    /****************************************************************************** *时间:2016/9/25 11:00 ...

  7. 丢手帕问题即约瑟夫问题的PHP解法

    问题描述:n个人排成一圈.从某个人开始,依次报数,数到m的人被杀死.下一个人重新从1开始报数,数到m的人被杀死.直到剩下最后一个人. 解决思路:从数学角度去看,每一次报数决定谁去死是一个n.m的求余数 ...

  8. css箭头

    .aui-list-item-arrow:before { content: ''; width: 0.4rem; height: 0.4rem; position: absolute; top: 5 ...

  9. fly bird

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  10. JQuery基本知识框架思维导图(上)

    一:认识jQuery 1.window.onload与$(document).ready()的对比 2.jQuery代码风格(1:链式代码风格2:位代码添加注释) 3.jQuery对象和DOM对象(1 ...