技术开发 频道

利用微软的VSS管理Unix项目的程序和文档版本

【IT168 技术文章】

    1、Unix项目程序和文档版本控制的困惑   

    本人多年来一直从事银行应用软件的开发和维护工作, 参与的项目绝大多数是基于Unix操作系统的, 在每一个项目的开发过程中,都将产生大量的程序文件和相关文档,项目的文档一般是存放在Windows环境下的,而程序文件则一般会存放在Unix服务器中,对于较复杂的项目,也会出现部分程序文件是Windows环境下开发的并存放在Windows环境下的情况,能否对这些程序和文档进行有效的控制,将直接影响到项目的工程质量。

    为了控制Unix项目的程序和文档的版本,我所在的部门采取了一系列的措施,在前两年,我们指定了专人(版本管理员)对项目程序和文档的版本变更进行人工登记和管理,但这种做法并未取得我们预期的效果,原因是我们部门的开发项目较多,只依靠一两个版本管理员进行所有项目的版本管理将带来巨大的工作量,由于版本管理员都不是全职的(自身都有开发和维护的任务),他们只能应付式地完成版本管理的工作,造成了项目版本管理质量未能明显改善。

    要解决人工管理工作量大的问题,引入版本管理软件是必要的,但市面上版本管理软件繁多,而且一般价格昂贵,这些价格昂贵的版本管理软件的功能过于强大,反而增加了使用的复杂性,如果用户未经过系统的操作培训,他们就很难上手使用,寻找功能适中、价格便宜和使用方便的版本管理软件具有现实的意义,在本文中将向读者们推荐如何使用微软公司的Visual SourceSafe版本管理软件来管理Unix项目的程序和文档版本。

    2、微软Visual SourceSafe简介

    微软的Visual SourceSafe(以下简称VSS)广泛应用于基于Windows环境的软件项目的版本控制,它具有以下的特点:

    (1) 功能实用

    VSS提供了基本的版本控制功能, 包括协调多人同时存取同一个文件、跟踪文件的历史版本等基本功能。VSS也提供版本数据库的备份和恢复功能,可有效保证了版本数据的安全性,这些功能对于一般的项目开发已经足够了。

    (2) 价格便宜

    VSS是Microsoft Visual Studio开发产品家庭(一般从事软件开发的团体都会有该软件)中的一员,如果你现在已有Visual Studio 6 Enterprise Edition,或者Visual Studio .NET Enterprise Developer Edition,或者Visual Studio .NET Enterprise Architect Edition,都可以在上面找到VSS软件,由于Microsoft Visual Studio的价格较低(如Visual Studio .NET Enterprise Developer Edition,网上报价为US$ 1799),如果进行成本的摊分,VSS的实际成本可以说是微不足道,如果你无上述的Visual Studio软件,你也可单独购买VSS软件,网上的报价为US$ 549。

    (3) 使用方便

    VSS继承了微软所有产品的优点,提供了方便的图形化的集成的操作界面,用户可直观地进行文件的存取、历史版本浏览、文件比较等操作,并可直观地监控到各个文件的当前的状态和当前被哪些用户所占用等信息。用户基本上不需要培训,就可使用VSS。

    3、利用VSS管理Unix项目程序和文档版本的关键技术点

    由于VSS是微软公司被设计用作在WINDOWS操作系统环境下进行文件版本管理的软件,它所管理的文件只能是windows系统能控制的文件。如果要让VSS管理UNIX系统上的文件,必须通过一定的软件支持,令到UNIX文件和目录映射到WINDOWS系统上,变成WINDOWS系统可见和可控制的资源,这样,VSS才可能存取和管理这些文件。

    目前支持UNIX文件映射到WINDOWS系统的软件有多种,本文将向大家推荐一个GNU的软件,就是著名的SAMBA软件,该软件是完全免费的共享软件,读者可方便从互联网上进行下载,该软件功能相当强大,除UNIX文件、目录可输出到WINDOWS系统中,打印机等资源也可直接输出到WINDOWS系统中,通过它可实现跨系统的各种资源共享。

    4、构建VSS管理Unix项目程序和文档版本的过程描述

    以下我们将通过一个利用VSS管理AIX服务器上某目录下文件版本的例子,来说明构建的过程细节,基于其它UNIX操作系统的项目可参考这个过程,并在某些实现细节上略加调整即可。

    (1) 构建例子示意图


    如图所示,本次构建的例子将实现VSS对AIX服务器上/tmp/mydir目录下所有文件的版本管理,为此,我们需要利用SAMBA软件将AIX服务器上的/tmp/mydir进行目录输出,让VSS Client所在的机器可见和可控制,VSS Client再将本目录设定成项目的工作目录,即可实现对AIX服务器/tmp/mydir目录下文件的版本控制。

    (2) 下载Samba共享软件到微机

    你可从www.bullfreeware.com网站上下载samba在AIX操作系统上的最新执行码版本,该文件是一个exe为后缀的文件,文件名与版本号相关,本次试验中下载的文件名为SAMBA_aix432-2.0.7.0.exe,该文件的大小约为5M。

    如果你是其它的操作系统,如Solaris、Linux,则你可从Samba的国际网站上下载Samba的所在操作系统执行码的最新版本,该文件通常是一个压缩的ZIP文件。

    (3) 安装和配置Samba软件

    a. 将程序从微机FTP到UNIX操作系统中。

    我们一般从网上下载的资料都存放在微机系统中,这是你可用ftp将该文件传送到UNIX服务器中,由于该文件是压缩文件,在进行FTP文件传输时,必须选择二进制的传输方式, 以确保文件的正确性。本次试验中将文件传送到了AIX系统的/tmp目录下。

    b. 执行程序进行解包。

    用root用户登录AIX系统,执行以下命令进行文件解包:

    cd /tmp

    chmod 755 SAMBA_aix432-2.0.7.0.exe

    ./SAMBA_aix432-2.0.7.0.exe

    该文件解压后,将形式两个文件,分别是SAMBA-2.0.7.0.bff和SAMBA-2.0.7.0.bff.asc文件,这两个文件的大小大约为15M,因此在进行本文件解压前,你必须确保解压所在目录必须有15M以上的空闲空间。 

0
相关文章