• 如何把SourceSafe中的数据转换成CVS的数据


    作者: 黄润磊

    微软的 SourceSafe 使用简单,而且与 Visual C++ 开发环境结合得非常好,所以许多人一开始进行版本控制时往往选

    择 SourceSafe。但是 SourceSafe 不具备许多关键的特性,比如:不能建分枝,不能建标记等等,而且还有安全方面

    的问题。所以在使用了一段时间以后,对版本控制的概念熟悉了以后,可能想转移到其他的版本控制软件。许多商业的版

    本控制软件(比如:ClearCase)都提供了从SourceSafe到自己的转换工具,开放源码的CVS也有两个这样的转换工具。

    一个是 vss2cvs.pl,这是一个 perl 脚本,我曾经试用过,但是没有成功。另外一个是 VSSExtractor,经过一天的

    摸索,终于成功地用VSSExtractor 把我以前的 SourceSafe 数据转换到 CVS 中。我现在把我转换的过程写下来,希

    望对大家有所帮助。

    一、需要的软件
    1、从http://sourceforge.net/projects/vssextractor/ 下载 VSSExtractor,需要两个文件

    cserver-0.7.1.tar.gz 和 VSSExtractor-0.7.1.zip

    2、下载CVS 源码http://ftp.cvshome.org/cvs-1.11.1/cvs-1.11.1p1.tar.gz,VSSExtractor 只能使用这个版

    本的CVS。

    3、如果需要自己编译 VSSExtractor,还需要 xml-xerces-1.4.0的源文件,在 apache 网站上没有打包好的,我是

    用CVS得到的。用如下命令:

    set CVSROOT=:pserver:anoncvs@cvs.apache.org:/home/cvspublic

    cvs login

    (密码:anoncvs)

    cvs co -r Xerces-C_1_4_0 xml-xerces

    二、编译和运行cserver

    为了叙述方便,假定cvs-1.11.1p1.tar.gz和cserver-0.7.1.tar.gz都放在~/cserver目录下。

    1、 开cvs-1.11.1p1.tar.gz和cserver-0.7.1.tar.gz。在 ~/cserver 目录下用如下命令:

    tar –xzvf cvs-1.11.1p1.tar.gz

    tar –xzvf cserver-0.7.1.tar.gz

    2、打补丁。在~/cserver/cvs-1.11.1p1目录下,输入如下命令:

    patch -p1 < ../cserver/patch/cserver-0.7.1.patch

    3、编译。在~/cserver/cvs-1.11.1p1目录下,输入如下命令:

    ./configure

    make

    4、编辑~/cserver/cvs-1.11.1p1/src 目录下的cserver.conf。主要是Cvsroot项,改成真正的CVS Repository的

    路径,建议新建一个Repository,不要使用有重要数据的,转换弯成以后再把目录复制到生产环境里。cserver.conf的

    其他的项可以不动。

    4、运行cserver。在~/cserver/cvs-1.11.1p1/src目录下,输入如下命令:

    ./cserver

    三、编译和运行VSSExtractor
    解开VSSExtractor-0.7.1.zip,根据自己的配置修改 VSSExtractor.ini 文件,需要修改的选项有:

    1、SSDir SourceSafe 数据库的位置。

    2、VSSPath ss.exe 可执行文件的位置,一般为 visual studio安装目录\common\vss\win32

    3、TempDir 临时目录

    4、Server 运行 cserver 的Linux 机器的 IP 地址或机器名。

    5、Project 要转换的 SourceSafe Project

    修改完这些选项以后,就可以运行 VSSExtractor 来进行转换了。但是还有两个问题需要注意:

    1、VSSExtractor 使用当前用户登录系统时的用户名来登录SourceSafe,所以需要在SourceSafe中建立一个与当前登

    录名相同的用户,没有密码,该用户要对需要转换的工程有读权限。

    2、由于VSSExtractor是老外开发的,而老外显示日期的格式与中国人不一样,所以在转换以前使用控制面板中的“区域

    选项”,把“您的区域设置(位置)”暂时改为“英语(美国)”。或者修改VSSExtractor的源代码,修正这个错误,重新编

    译。

  • 相关阅读:
    Asp.MVC 各个版本比较(资源整合)与WebForm的区别
    20款最新且极具创意的jQuery插件(附下载)
    php java net 开发比较
    移动互联网渠道乱象
    基于微软IIS/.NET平台开发的知名网站 (补充)
    sqlsql语句查询优化总结,建议及写法技巧(汇总)
    总结关于对日外包的一些想法
    .net跨平台解决方案mono真正实现C#代码一次编写处处运行(微软已经正式支持夸平台框架aspnet core)
    .NET 常用经典学习资源网站推荐
    常用visual studio 插件工具
  • 原文地址:https://www.cnblogs.com/meil/p/509341.html
Copyright © 2020-2023  润新知