csvn使用入门
在前面我们已经配置好了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使用入门的更多相关文章
- CSVN(SVN)命令入门及使用过程中遇到的错误问题汇总
首先进入web管理界面新建一个版本库 新建一个文件text svn add text #如果提示错误,在后面增加–force svn ci -m 'add text' #如果提示错误,将csvn下的目 ...
- Angular2入门系列教程7-HTTP(一)-使用Angular2自带的http进行网络请求
上一篇:Angular2入门系列教程6-路由(二)-使用多层级路由并在在路由中传递复杂参数 感觉这篇不是很好写,因为涉及到网络请求,如果采用真实的网络请求,这个例子大家拿到手估计还要自己写一个web ...
- ABP入门系列(1)——学习Abp框架之实操演练
作为.Net工地搬砖长工一名,一直致力于挖坑(Bug)填坑(Debug),但技术却不见长进.也曾热情于新技术的学习,憧憬过成为技术大拿.从前端到后端,从bootstrap到javascript,从py ...
- Oracle分析函数入门
一.Oracle分析函数入门 分析函数是什么?分析函数是Oracle专门用于解决复杂报表统计需求的功能强大的函数,它可以在数据中进行分组然后计算基于组的某种统计值,并且每一组的每一行都可以返回一个统计 ...
- Angular2入门系列教程6-路由(二)-使用多层级路由并在在路由中传递复杂参数
上一篇:Angular2入门系列教程5-路由(一)-使用简单的路由并在在路由中传递参数 之前介绍了简单的路由以及传参,这篇文章我们将要学习复杂一些的路由以及传递其他附加参数.一个好的路由系统可以使我们 ...
- Angular2入门系列教程5-路由(一)-使用简单的路由并在在路由中传递参数
上一篇:Angular2入门系列教程-服务 上一篇文章我们将Angular2的数据服务分离出来,学习了Angular2的依赖注入,这篇文章我们将要学习Angualr2的路由 为了编写样式方便,我们这篇 ...
- Angular2入门系列教程4-服务
上一篇文章 Angular2入门系列教程-多个组件,主从关系 在编程中,我们通常会将数据提供单独分离出来,以免在编写程序的过程中反复复制粘贴数据请求的代码 Angular2中提供了依赖注入的概念,使得 ...
- wepack+sass+vue 入门教程(三)
十一.安装sass文件转换为css需要的相关依赖包 npm install --save-dev sass-loader style-loader css-loader loader的作用是辅助web ...
- wepack+sass+vue 入门教程(二)
六.新建webpack配置文件 webpack.config.js 文件整体框架内容如下,后续会详细说明每个配置项的配置 webpack.config.js直接放在项目demo目录下 module.e ...
随机推荐
- mysql 内置函数和sql server 内置函数的区别
以下函数均没有对参数做说明,使用的使用需要了解其参数内容 数据库 sql server mysql oracle 举例 获得当前系统时间 getdate() now() sysdate 注意不是函数 ...
- 【转载】linux Jumpserver跳板机堡垒机部署安装使用教程
原文地址:https://idc.wanyunshuju.com/li/554.html
- (C/C++学习笔记) 二十四. 知识补充
二十四. 知识补充 ● 子类调用父类构造函数 ※ 为什么子类要调用父类的构造函数? 因为子类继承父类,会继承到父类中的数据,所以子类在进行对象初始化时,先调用父类的构造函数,这就是子类的实例化过程. ...
- PLY文件格式
一.PLY简介 PLY文件格式是Stanford大学开发的一套三维mesh模型数据格式,图形学领域内很多著名的模型数据,比如Stanford的三维扫描数据库(其中包括很多文章中会见到的Happy Bu ...
- loadrunner json中文无法识别问题
http://blog.sina.com.cn/s/blog_6ff7a3b50101awmy.html
- MicroBlaze核的串行接口实验:SPI UART
reference : https://blog.csdn.net/weixin_42413559/article/details/80720566 串行接口:SPI UART XPS->SDK ...
- Centos7部署kubectl命令行工具(五)
1.准备二进制包 [root@linux-node1 ~]# cd /usr/local/src/kubernetes/client/bin [root@linux-node1 bin]# cp ku ...
- FGX Native library功能介绍
Hot news from the fields of the cross-platform library "FGX Native" development. New Engli ...
- Oracle使用exp和imp导出、导入数据
===========导出============ exp 用户名/密码@服务器(localhost) file=文件路径.dmp owner=(用户名) ===========导入========= ...
- django本身提供了runserver,为什么不能用来部署(runserver与uWSGI的区别)
runserver方法是调试django时经常用到的运行方式,它使用django自带的. WSGI Server 运行,主要在测试和开发使用,并且runserver 开启的方式也是单线程. uWSGI ...