svn服务器的配置

简介:
                            仓库:服务器上的文件
                            工作副本:客户端下载到本地的文件
                            工作副本的状态:
                            1、当前未更改
                            2、当前已更改
                            3、过时未更改
                            4、过时已更改

配置svn服务器
一、准备一台VM作为服务器
1、初始化
vh01.tedu.cn 192.168.4.1 selinux/firewalld/yum/
2、安装
[root@vh01 ~]# yum install -y subversion
3、创建svn数据库根目录
[root@vh01 ~]# mkdir /var/svn
4、创建项目目录
[root@vh01 ~]# svnadmin create /var/svn/project
5、修改配置文件
[root@vh01 ~]# vim /var/svn/project/conf/svnserve.conf 
anon-access = none #匿名用户不允许访问
auth-access = write #认证后的用主户可以读写
password-db = passwd #存储svn用户的文件
authz-db = authz #授权文件
[root@vh01 ~]# vim /var/svn/project/conf/passwd 
[users]
tom = tom123
jerry = jerry123
[root@vh01 ~]# vim /var/svn/project/conf/authz 
[groups]
tom_and_jerry = tom,jerry
[/]
@tom_and_jerry = rw

  • = r
    6、起动服务
    [root@vh01 ~]# systemctl start svnserve
    [root@vh01 ~]# systemctl enable svnserve.service 
    7、导入项目文件到svn服务器
    [root@vh01 ~]# cd /usr/lib/systemd/system
    [root@vh01 system]# svn import . file:///var/svn/project -m "Init Data"

客户端使用svn
1、客户端下载svn服务器上的项目文件
[root@vh01 system]# cd /opt/
[root@vh01 opt]# svn --username tom --password tom123 checkout svn://192.168.4.1/project code1
[root@vh01 opt]# cd code1/
[root@vh01 code1]# svn log
2、更新本地工作副本
[root@vh01 code1]# svn update 
3、新建文件
[root@vh01 code1]# vim foo.sh
#!/bin/bash

if [ "$1" == "foo" ]; then
echo "bar"
elif [ "$1" == "bar" ]; then
echo "foo"
else
echo "$0 foo|bar"
fi
[root@vh01 code1]# svn add foo.sh #把foo.sh加入svn本地管理
[root@vh01 code1]# svn diff #显示服务器和本地工作副本的区别
将本地文件同步到服务器
[root@vh01 code1]# svn commit -m "Add foo.sh to project"
4、新建目录
[root@vh01 code1]# svn mkdir subdir
[root@vh01 code1]# svn status #查看状态
5、删除文件
[root@vh01 code1]# rm cups.service # 本地删除
[root@vh01 code1]# svn update # cups.service将重新下载
[root@vh01 code1]# svn delete cups.service # 在svn中删除文件
[root@vh01 code1]# svn status 
[root@vh01 code1]# svn move foo.sh bar.sh # 在svn中改名
[root@vh01 code1]# svn commit -m "rename foo.sh, del cups.service, mkdir subdir"
6、练习
[root@vh01 code1]# sed -i '1a###test###' sshd.service 
[root@vh01 code1]# sed -i '2a###mytest###' sshd.service
[root@vh01 code1]# svn diff sshd.service
[root@vh01 code1]# svn diff 
[root@vh01 code1]# svn log svn://192.168.4.1/project
[root@vh01 code1]# svn commit -m "modify sshd.service"
7、将sshd.service回退到增加两行之前的状态
[root@vh01 code1]# svn merge -r4:2 sshd.service
[root@vh01 code1]# vim sshd.service 第六步新增的两行消失
8、将svn的第2版本的文件全部下载下来,叫做code2
[root@vh01 opt]# svn co -r2 svn://192.168.4.1/project code2

多人协作
1、tom和jerry分别下载了svn上面的项目
[root@vh02 ~]# cd /opt/
[root@vh02 tmp]# svn co --username tom --password tom123 svn://192.168.4.1/project tom
[root@room8pc16 ~]# svn ls --username tom --password tom123 svn://192.168.4.1/project 
[root@vh03 ~]# cd /var/tmp/
[root@vh03 opt]# svn co --username jerry --password jerry123 svn://192.168.4.1/project jerry
2、不同用户修改不同文件
[root@vh02 tmp]# cd tom/
[root@vh02 tom]# sed -i '3a#####my test####' vmtoolsd.service 
[root@vh02 tom]# svn commit -m "tom modify vmtoolsd.service"
[root@vh03 opt]# cd jerry/
[root@vh03 jerry]# sed -i '3a#####jerry test####' sshd.service 
[root@vh03 jerry]# svn commit -m "jerry modify sshd.service"
[root@vh03 jerry]# svn update #tom修改的vmtoolsd.service同步到本地
[root@vh02 tom]# svn update

3、不同用户改变相同文件的不同行
[root@vh02 tom]# sed -i '1a####tom modify###' user.slice 
[root@vh02 tom]# svn commit -m "tom modify slice.user"
[root@vh03 jerry]# sed -i '$a###jerry modify###' user.slice 
[root@vh03 jerry]# svn commit -m "jerry modify user.slice" #失败,因为文件过时了(本地版本号低于服务器上的版本号)
[root@vh03 jerry]# svn update #更新到最新版本
[root@vh03 jerry]# svn commit -m "jerry modify user.slice" #重新提交
[root@vh03 jerry]# vim user.slice # tom和jerry的修改全部存在
4、不同用户改变相同文件的相同行
[root@vh02 tom]# sed -i '8c#####tom tom tom####' zram.service 
[root@vh02 tom]# svn commit -m "tom modify zram.service"
[root@vh03 jerry]# sed -i '8c####jerry jerry####' zram.service 
[root@vh03 jerry]# svn commit -m "jerry modify zram.service"
[root@vh03 jerry]# svn update #选择p
[root@vh03 jerry]# ls zram.service
[root@vh03 jerry]# mv zram.service.mine zram.service
[root@vh03 jerry]# ls zram.service

[root@vh03 jerry]# rm -f zram.service.r
[root@vh03 jerry]# ls zram.service

[root@vh03 jerry]# svn commit -m "jerry modify zram.service"
5、svn服务器端备份
[root@vh01 tom]# svnadmin dump /var/svn/project/ > /var/tmp/project.bak
6、还原
[root@vh01 tom]# rm -rf /var/svn/project/
[root@vh01 tom]# ls /var/svn/
[root@vh01 tom]# svnadmin create /var/svn/project/
[root@vh01 tom]# svnadmin load /var/svn/project/ < /var/tmp/project.bak










本文转自 英强云计算 51CTO博客,原文链接:http://blog.51cto.com/13404755/2051846,如需转载请自行联系原作者
目录
相关文章
|
1月前
HAProxy的高级配置选项-配置haproxy支持https协议及服务器动态上下线
文章介绍了如何配置HAProxy以支持HTTPS协议和实现服务器的动态上下线。
88 8
HAProxy的高级配置选项-配置haproxy支持https协议及服务器动态上下线
|
1月前
|
监控 Apache
HAProxy的高级配置选项-Web服务器状态监测
这篇文章介绍了HAProxy的高级配置选项,特别是如何进行Web服务器状态监测,包括基于四层传输端口监测、基于指定URI监测和基于指定URI的request请求头部内容监测三种方式,并通过实战案例展示了配置过程和效果。
58 8
HAProxy的高级配置选项-Web服务器状态监测
|
20天前
|
Ubuntu Linux
Linux服务器的自动启动可以在哪里进行配置?
Linux服务器的自动启动可以在哪里进行配置?
84 3
|
2月前
|
存储 弹性计算 负载均衡
阿里云服务器地域、实例、带宽与操作系统等配置选择指南参考
在数字化时代,无论是个人博客、企业官网、APP后端支持,还是小程序运行或者其他项目,云服务器都扮演着至关重要的角色,考虑产品质量、服务和价格等因素,大家现在都喜欢选择阿里云服务器。然而,对于初次接触云服务的新手来说,可能并不是很清楚应该如何选阿里云服务器的地域、实例、带宽与操作系统等配置。本文将从地域选择、实例规格、操作系统、云盘配置、购买时长以及带宽选择等六个方面,为新手用户提供详细的选购指南,以供参考。
阿里云服务器地域、实例、带宽与操作系统等配置选择指南参考
|
1月前
|
监控 应用服务中间件
Nagios 服务器 Nrpe 配置
Nagios服务器需安装NRPE并定义监控命令于`command.cfg`中。示例配置如下:`check_nrpe -H $HOSTADDRESS$ -c $ARG1$`。客户端配置文件如`192.168.149.128.cfg`可引用NRPE配置的命令,如`check_nrpe!check_load`以监控负载。监控HTTP关键词使用`check_http`命令加参数,如`-I`指定IP,`-u`指定URL,`-s`指定关键词,可在`command.cfg`中定义如`check_http_word`命令,并在主机配置文件中引用。
45 13
|
1月前
|
编解码 小程序
无影云电脑产品使用黑神话悟空之:游戏服务器更新/配置问题
该文档主要介绍了使用无影云电脑玩《黑神话:悟空》时可能遇到的问题及解决方法,包括游戏服务器更新、配置问题、画质建议及如何开启帧数显示等内容,并提供了详细的步骤指导与参考链接。
|
2月前
|
关系型数据库 MySQL Linux
在Linux中,如何配置数据库服务器(如MySQL或PostgreSQL)?
在Linux中,如何配置数据库服务器(如MySQL或PostgreSQL)?
|
2月前
|
Ubuntu 应用服务中间件 Linux
在Linux中,如何配置Web服务器(如Apache或Nginx)?
在Linux中,如何配置Web服务器(如Apache或Nginx)?
|
2月前
|
安全 Ubuntu 网络协议
在Linux中,如何配置DHCP服务器?
在Linux中,如何配置DHCP服务器?
|
1月前
|
监控 安全 网络协议
快速配置Linux云服务器
快速配置Linux云服务器