标签:imp update 提升 文件的 两台 mic 恢复 连接 服务
搭建svn服务器一、前期准备工作:
1、准备两台服务器,我这里是192.168.4.123和192.168.4.124
2、在两台服务器上分别安装软件: yum -y install subversion
3、让4.123做服务端,4.124做客户端。
二、服务器的搭建
1、在4.123上创建数据存储路径:mkdir /var/svn
2、svnadmin create /var/svn/project1 //创建共享目录
3、往共享目录里面导入一些文件(实际环境中就是源代码)
svn import /usr/lib/systemd/system file:///var/svn/project1 -m "导入文件
把/usr/lib/systemd/system目录下大文件导入到/var/svn/project1
4、如何查看project文件夹下的文件
svn list file:///var/svn/project1 //本机查看文件
三、服务器配置
1、cd /var/svn/project1/conf 进到配置文件的目录,分别配置三个文件
A、 svnserve.conf
19、anon-access = none //匿名用户不能访问
20、auth-access = write //认证用户可以写
27、password-db = passwd //密码文件
34、authz-db = authz
B、passwd //创建用户和密码
[users]
zhangsan = 123456
lisi = 1234567
C、authz //设置用户对目录的读取权限
[/] //改目录代表根目录,也就是project1目录
zhangsan = rw
lisi = rw
2、启动服务:选择第一种服务
svnserve -d -r /var/svn/project1/ //共享一个目录
systemctl start svnserve //所有的共享目录都发布出去
3、客户端验证:4.124
这里主要用于测试,首先cd /tmp目录下,下面的code就会创建在此目录下
svn co --username zhangsan --password 123456 svn://192.168.4.123/ code
从服务端下载文件,用户名和密码,后面是服务端地址,code是本地目录,自动创建
四、单机验证:在4.124上用lisi这个帐号来连接服务器
1、在code目录下随便找一个文件修改,zram.service
svn ci -m "zhushi" //会自动上传该动过的文件
正在发送 zram.service
传输文件数据.
提交后的版本为 2。
2、如果其它人修改了文件,你可以选择下面的命令来更新,以达到和服务器上一样的版本
svn update
3、svn log svn://192.168.4.123 //可查看日志信息,也就是查看什么帐号在什么时间做的事
4、在客户端新建文件或者目录需注意的地方
vim zzzz.sh (新建文件) svn add zzzz.sh(需添加到svn里面,否则无法上传到服务器)
svn mkdir abc(新建目录) svn mv a.sh b.sh(改名)
svn diff zzzz.sh //文件对比,需指定文件名
svn cat svn://192.168.4.123/zzzz.sh //在服务器上查看文件
5、数据还原,分下面几种不同的情况
A、本地修改,已保存,但未提交:svn revert zram.service
B、本地修改,提交:svn merge -r4:1 zram.service 从第四个版本还原到第一个版本
C、本地修改,并提交了多个文件,如果一个一个文件还原版本的话,效率太慢
svn -r2 co svn://192.168.4.123/ code2 //取出版本2的所有文件,,并存放在code2目录下
五、多人协同下如何解决版本冲突问题
1、4.123用zhangsan登陆,4.124用lisi来登陆,导入文件到本地目录code下
2、两人同时在操作文档时,分下面几种情况来说明
A、修改不同文件,
svn update //首先在修改之前,保持版本一样
两个人更改不同的文件后分别提交,zhangsan提交后版本为5,lisi提交后的版本为6
再更新一次,svn update ,这样两人得到的就都是版本6
B、修改相同文件的不同行,
改完后上传,谁先提交没问题,后提交的提示“过期”,
后提交的先update一下,然后再上传一下,先提交的再update
C、修改相同文件的相同行(冲突,人为解决)
假如zhangsan先提交,上传成功,
lisi提交,会报错,先更新update,会提升报错,选p推迟,线下解决
在lisi上删除多于的版本,留下协商好的最终版本,然后上传,
然后在zhangsan上update一下
六、备份和恢复
1、备份
svnadmin dump /var/svn/project1/ > /root/my.bak
2、还原
首先创建新的共享目录:svnadmin create /var/svn/project2
然后导入备份文件:svnadmin load /var/svn/project2/ < /root/my.bak
标签:imp update 提升 文件的 两台 mic 恢复 连接 服务
原文地址:http://blog.51cto.com/453412/2063443