在前面我们已经配置好了csvn服务器,直达链接http://blog.csdn.net/qq_34829953/article/details/78285647
现在我们在win10环境下使用我们搭建好了的svn
随便在一个路径下新建一个文件夹,用到存放svn文件,右键选中svn checkout,url那里填版本库检出命令,注意localhost.localdomain那里需要改为csvn服务器的ip,回车后输入用户名admin密码admin(这是默认的)

然后随便在workspace里面新建一个文件,然后选中workspace右键选中svn commit,然后这个文件就会更新到svn版本库了

现在我们尝试新建一个用户,我就懒得截图了,我们随便创建一个用户,并且给这个用户所有项目的读权限,点击导航栏的版本库,选中访问跪着,添加username=r(增加这条语句,其实这个用户还是拥有所有项目的读写权限,原因是上面的那句*=rw,也就是说所有用户都具有读写权限,我们再把这句改为admin=rw就可以了)
现在我们再尝试新建文件,并svn commit,发现权限不足,提交失败。改为username=rw,再次提交,提交成功

刚搭建好的csvn服务器可以说是空白的,需要我们自己创建版本库
问题是,现在我们有另一个旧的svn版本库需要导进来,实现在访问这个新csvn服务器上能同时访问到旧的svn版本库
实现方法很简单:
将旧csvn服务器的csvn\data\repositories目录下文件拷贝到新服务器的repositories下
具体如何简单快速地实现呢,毫无疑问使用scp命令(这个命令貌似系统自带,不用进行多余的配置)
scp -r /application/csvn/data/repositories/* root@10.0.3.103:/application/csvn/data/repositories/
为什么要加个-r(递归)选项呢?因为不只是复制一个文件,而是多个,不加会提示not a regular file
需要重启csvn,如果重启后再版本库里还是没看到新增旧的版本库,可以点击discover刷新,一般就可以出现了
导入之后还会报一个警告,那就是权限不足,将新导入的版本库修改其拥有者为csvn,然后进入web页面的版本库,点击新导入的版本库后面的可能需要修改权限,点击验证权限,恢复正常

csvn版本库的迁移

首先复制旧csvn服务器上repositories下的版本库文件夹到新csvn服务器repositories文件夹下面

然后复制旧csvn的svn_auth_file到新csvn上(这个应该是复制旧服务器上的密码,但是却没有生效,不知道为什么)

接着就是复制旧服务器上的用户账号

csvn-production-hsqldb.script   在这个文件里搜索INSERT   INTO  USER 然后复制这几行,追加到新服务器上的对应文件中(这里我遇到一个问题,就是我在csvn的web管理界面可以看到我新建的用户,但是我在这个文件中却找不到对应的插入信息,最后发现是没有重启csvn的问题)

接着用旧csvn服务器上svn_access_file文件覆盖新csvn服务器上的对应文件(为了安全起见,最好将被替换的文件先做好一个备份,防止出现异常情况无法恢复)

最后重启csvn,迁移就完成了。但是有一个问题,就是旧服务器上的账号无法正常登陆新的csvn,会提示没有权限读取页面,这个我还不知道怎么解决

使用svnadmin dump 快速复制版本库

svnadmin dump /application/csvn/data/repositories/test > repos-dumpfile

上面这条命令用来备份test版本库,导出为文件repos-dumpfile

csvn使用入门的更多相关文章

  1. CSVN(SVN)命令入门及使用过程中遇到的错误问题汇总

    首先进入web管理界面新建一个版本库 新建一个文件text svn add text #如果提示错误,在后面增加–force svn ci -m 'add text' #如果提示错误,将csvn下的目 ...

  2. Angular2入门系列教程7-HTTP(一)-使用Angular2自带的http进行网络请求

    上一篇:Angular2入门系列教程6-路由(二)-使用多层级路由并在在路由中传递复杂参数 感觉这篇不是很好写,因为涉及到网络请求,如果采用真实的网络请求,这个例子大家拿到手估计还要自己写一个web ...

  3. ABP入门系列(1)——学习Abp框架之实操演练

    作为.Net工地搬砖长工一名,一直致力于挖坑(Bug)填坑(Debug),但技术却不见长进.也曾热情于新技术的学习,憧憬过成为技术大拿.从前端到后端,从bootstrap到javascript,从py ...

  4. Oracle分析函数入门

    一.Oracle分析函数入门 分析函数是什么?分析函数是Oracle专门用于解决复杂报表统计需求的功能强大的函数,它可以在数据中进行分组然后计算基于组的某种统计值,并且每一组的每一行都可以返回一个统计 ...

  5. Angular2入门系列教程6-路由(二)-使用多层级路由并在在路由中传递复杂参数

    上一篇:Angular2入门系列教程5-路由(一)-使用简单的路由并在在路由中传递参数 之前介绍了简单的路由以及传参,这篇文章我们将要学习复杂一些的路由以及传递其他附加参数.一个好的路由系统可以使我们 ...

  6. Angular2入门系列教程5-路由(一)-使用简单的路由并在在路由中传递参数

    上一篇:Angular2入门系列教程-服务 上一篇文章我们将Angular2的数据服务分离出来,学习了Angular2的依赖注入,这篇文章我们将要学习Angualr2的路由 为了编写样式方便,我们这篇 ...

  7. Angular2入门系列教程4-服务

    上一篇文章 Angular2入门系列教程-多个组件,主从关系 在编程中,我们通常会将数据提供单独分离出来,以免在编写程序的过程中反复复制粘贴数据请求的代码 Angular2中提供了依赖注入的概念,使得 ...

  8. wepack+sass+vue 入门教程(三)

    十一.安装sass文件转换为css需要的相关依赖包 npm install --save-dev sass-loader style-loader css-loader loader的作用是辅助web ...

  9. wepack+sass+vue 入门教程(二)

    六.新建webpack配置文件 webpack.config.js 文件整体框架内容如下,后续会详细说明每个配置项的配置 webpack.config.js直接放在项目demo目录下 module.e ...

随机推荐

  1. mysql 内置函数和sql server 内置函数的区别

    以下函数均没有对参数做说明,使用的使用需要了解其参数内容 数据库 sql server mysql oracle 举例 获得当前系统时间 getdate() now() sysdate  注意不是函数 ...

  2. 【转载】linux Jumpserver跳板机堡垒机部署安装使用教程

    原文地址:https://idc.wanyunshuju.com/li/554.html

  3. (C/C++学习笔记) 二十四. 知识补充

    二十四. 知识补充 ● 子类调用父类构造函数 ※ 为什么子类要调用父类的构造函数? 因为子类继承父类,会继承到父类中的数据,所以子类在进行对象初始化时,先调用父类的构造函数,这就是子类的实例化过程. ...

  4. PLY文件格式

    一.PLY简介 PLY文件格式是Stanford大学开发的一套三维mesh模型数据格式,图形学领域内很多著名的模型数据,比如Stanford的三维扫描数据库(其中包括很多文章中会见到的Happy Bu ...

  5. loadrunner json中文无法识别问题

    http://blog.sina.com.cn/s/blog_6ff7a3b50101awmy.html

  6. MicroBlaze核的串行接口实验:SPI UART

    reference : https://blog.csdn.net/weixin_42413559/article/details/80720566 串行接口:SPI UART XPS->SDK ...

  7. Centos7部署kubectl命令行工具(五)

    1.准备二进制包 [root@linux-node1 ~]# cd /usr/local/src/kubernetes/client/bin [root@linux-node1 bin]# cp ku ...

  8. FGX Native library功能介绍

    Hot news from the fields of the cross-platform library "FGX Native" development. New Engli ...

  9. Oracle使用exp和imp导出、导入数据

    ===========导出============ exp 用户名/密码@服务器(localhost) file=文件路径.dmp owner=(用户名) ===========导入========= ...

  10. django本身提供了runserver,为什么不能用来部署(runserver与uWSGI的区别)

    runserver方法是调试django时经常用到的运行方式,它使用django自带的. WSGI Server 运行,主要在测试和开发使用,并且runserver 开启的方式也是单线程. uWSGI ...