CVS配置库的迁移

CVS 库的移动

 

在项目开发过程中,难免会出现各种各样的问题,当然,服务器饿坍塌也是有可能的,因此我们测试了服务器的迁移问题,具体做法依下方法:

 

1. CVS服务器版本相同

如果要迁移坍塌掉的服务器上的库到另一台服务器上,那么首先保证旧服务器上cvs服务器的版本与新服务器上cvs的版本相同。

 

2. 在新的cvs服务器上建库

在新的服务器上重新建一个CVS库,来接收要移动的库

把原来服务器备份的文件夹目录(不包括CVSROOT文件夹)放到新的服务器库下面,和新的CVSROOT同一个目录,比如:(1-工作产品库、2-管理文档库,这样的文件夹)

 

3. 修改本地隐藏文件CVS下面的Root文件

修改本地客户端所有隐藏文件夹及子目录下CVS下面的Root文件,修改里面的库路径为新的库路径

例子:旧路径::pserver:cvsadmin@localhost:/开发的项目/cvsroot

新路径::pserver:cvsadmin@172.16.26.28:/cvsroot

4. 把根目录最外层的Root文件放到根目录外面,和批处理处于同一个目录下

5. 对于比较小的项目,编写一个批处理文件(56二选一)

编写一个批处理文件CVSRootChange.bat,里面内容如下:

copy Root "E:/开发的项目/CVS工具练习/CVSROOT/CVS" /y
copy Root "E:/开发的项目/CVS工具练习/1-工作产品库/CVS" /y
copy Root "E:/开发的项目/CVS工具练习/1-工作产品库/1-产品文档库/CVS" /y
copy Root "E:/开发的项目/CVS工具练习/1-工作产品库/1-产品文档库/1-目标任务文档/CVS" /y
copy Root "E:/开发的项目/CVS工具练习/1-工作产品库/1-产品文档库/2-需求文档/CVS" /y
copy Root "E:/开发的项目/CVS工具练习/1-工作产品库/1-产品文档库/3-设计文档/CVS" /y
copy Root "E:/开发的项目/CVS工具练习/1-工作产品库/1-产品文档库/3-设计文档/1-DB设计/CVS" /y
copy Root "E:/开发的项目/CVS工具练习/1-工作产品库/1-产品文档库/3-设计文档/2-UML设计/CVS" /y
copy Root "E:/开发的项目/CVS工具练习/1-工作产品库/1-产品文档库/3-设计文档/3-设计参考资料/CVS" /y
copy Root "E:/开发的项目/CVS工具练习/1-工作产品库/1-产品文档库/3-设计文档/4-设计规范/CVS" /y 
 

我这里只是一个例子,如果移库,每个文件夹下面的都要添加进去方可,然后把它保存为批处理文件,通过运行批处理

文件,改变Root下面的所有文件路径。

6.对于比较大的项目,需要运行一个java文件方可

package com.tf;

 

import java.io.File;

import java.util.ArrayList;

 

public class CvsChangeRoot

{

    private static ArrayList filelist = new ArrayList();

    public static void main(String[] args) throws Exception

   {

        CvsChangeRoot.refreshFileList("E:/开发的项目//CVS工具练习//");

   }

 

    public static void refreshFileList(String strPath)

   {

        File dir = new File(strPath);  //将给定字符串转换成抽象路径名来创建一个新的File实例

        File[] files = dir.listFiles();  //列出strPath目录下所有的文件名

 

        if (files == null) //如果文件为空,返回

            return;

        for (int i = 0; i < files.length; i++) //遍历所有文件

        { 

            if (files[i].isDirectory())

           { //判断文件是否是目录,如果是目录,执行if内方法

                refreshFileList(files[i].getAbsolutePath());  //files[i].getAbsolutePath() 返回此抽象路径名的绝对路径名字符串

                String strFileName = files[i].getAbsolutePath().toLowerCase(); //toLowerCase() 将字符串转换为小写

                if (strFileName.substring(strFileName.length() - 3, strFileName.length()).equals("cvs"))

               { //截取文件名的第四至最后一位字符,如果其等于cvs,则将其加入ArrayList(跟数组差不多)

                    System.out.println("copy Root /"" + strFileName + "/" /y");  //打印文件名

                    filelist.add(files[i].getAbsolutePath());  //将此文件路径加入数组

                }

            }

        }

    }

}

 

   把此文件放到eclipse里面,做好前面的一切工作后,运行此java文件即可。

 

7.本地客户端重新配置服务器,重新登陆提交。

     本地更新提交即可。

 

   知道的暂时也就这么多,希望对大家有所帮助!

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值