centos升级配置svn详细步骤及常用操作

简介:

系统版本 Centos 6.4 64位

升级原因:

网站在360网站检测里面有提示发现SVN版本控制信息文件,修复方案是升级到1.7即可。用yum install subversion 升级后的版本是1.6.6,还是不行,就手动升级了

wKiom1OcHZqz2Bc5AADg7SfkNLg195.jpg

安装svn:

https://subversion.apache.org/download/

http://tortoisesvn.net/downloads.html 

http://www.subversion.org.cn/svnbook/1.4/ 

http://pan.baidu.com/s/1GSxHW 里面有客户端包和中文说明手册 官网地址http://tortoisesvn.net/support.html

svn 1.8.9在编译的时候./configure 需要apr,apr-util,sqlite三个软件包,所以先安装

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
yum remove subversion
tar  -xzf apr-1.4.6. tar .gz
cd  apr-1.4.6
. /configure
. /configure  --prefix= /usr/local/apr
make
make  install
cd  ..
  
tar  -xzf apr-util-1.4.1. tar .gz
cd  apr-util-1.4.1
. /configure  --prefix= /usr/local/apr-util  --with-apr= /usr/local/apr/
make
make  install
cd  ..
  
tar  -xzf subversion-1.8.9. tar .gz
wget http: //www .sqlite.org /sqlite-amalgamation-3071300 .zip
unzip sqlite-amalgamation-3071300.zip
mv  sqlite-amalgamation-3071300 . /subversion-1 .8.9 /sqlite-amalgamation
cd  subversion-1.8.9
. /configure  --prefix= /usr/local/svn  --with-apr= /usr/local/apr  --with-apr-util= /usr/local/apr-util/
make
make  install


安装后验证版本:

1
/usr/local/svn/bin/svnserve  --version

wKiom1OcHqOQsmbyAAHIy0gSuKA151.jpg


创建一个svn的工作文件夹 /data/svn

1
2
mkdir  -p  /data/svn
/usr/local/svn/bin/svnadmin  create  /data/svn

编辑配置文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
cd  /data/svn/conf
vim  passwd
[ users ]
# harry = harryssecret
# sally = sallyssecret
bbotte = 123456
  
vim authz
[aliases]
[ groups ]
bbottegroup = bbotte
[/]
@bbottegroup = rw
* =
  
grep  - v  ^\ # svnserve.conf
[general]
anon-access = none
auth-access = write
password-db =  passwd
authz-db = authz
realm =  /data/svn
[sasl]
  
vim  /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3690 -j ACCEPT
service iptables restart
  
/usr/local/svn/bin/svnserve  -d -r  /data/svn
ps  aux| grep  svn| grep  - v  grep
root      3412  0.0  0.0 139816   852 ?        Ss   14:27   0:00  /usr/local/svn/bin/svnserve  -d -r  /home/svndir/

配置说明

conf下面 password文件夹是放注册用户的,前两个#注释的是示例,下面写 用户名=密码 


authz 是用以控制权限,用来建立用户组,对组进行权限设置,一个组内权限一样,一般有 rw、r。group下面可以建多个组,每组一行,如果一组多人,后面用“,”隔开。

下面[/] 一行是项目名称

为了阻止其他用户组对这个文件有读的权力,我们可以再添加一句:* =


svnserve.conf是主配置文件,去掉password-db = passwd和authz-db = authz前面的注释符“#“,当然也可以自己定义。将anon-access= read前面的“#”去掉,并将read参数修改为none,表明禁止匿名用户对版本控制库的访问


客户端登陆

在windows 64位电脑安装 TortoiseSVN-1.8.5.25224-x64-svn-1.8.8.msi

安装后运行TortoiseSVN Repository Browser

在URL 输入框输入:svn://IP/svn/  在弹出的登录框输入用户名bbotte,密码 123456

wKioL1PbStmi2ZZSAAFyn22_i2U219.jpg


客户端常用操作:

1,在电脑桌面新建文件夹svndir,选择“SVN检出”

wKioL1PbRbfyjKGTAACzY-V25Pg579.jpg

wKiom1PbROrwZidVAAEsO4Nl3GM510.jpg


2,修改文件内容后,选择“SVN提交”

wKiom1Pe9H7DCJXhAADXY_L0cbY490.jpg

3,如果其他人正好已经修改了这个文件,自己电脑上的文件没有和服务器同步,那么先选择“SVN更新”,再“SVN提交”,以免出现下面错误


wKiom1PbS1XASC8TAADYjWl3L68434.jpg

4,冲突

文件冲突

假设A、B两个用户都在版本号为1的时候,更新了test.txt这个文件,A用户在修改完成之后提交test.txt到服务器,这个时候提交成功,这个时候test.txt文件的版本号已经变成2了。同时B用户在版本号为1的test.txt文件上作修改,修改完成之后提交到服务器时,由于不是在当前最新的2版本上作的修改,所以导致提交失败

属性冲突 

当两名或更多的开发人员修改了某个文件的属性时就会发生属性冲突。属性作为文件的一部分,解决属性冲突只能由开发人员来完成。 如果一个更改必须被另一个覆盖,那么就在 使用本地属性解决 和 使用远程属性解决 中选择一个。如果更改想要被合并,那就选择 手工编辑属性,选出所要的属性值然后标记为已解决。 

树冲突 

当一名开发人员移动、重命名、删除一个文件或文件夹,而另一名开发人员也对它们进行了移动、重命名、删除或者仅仅是修改时就会发生树冲突。有很多种不同的情形可以导致树冲突,而且不同的情形需要不同的步骤来解决冲突。 当一个文件通过 Subversion 在本机删除后,文件也从本机文件系统中删除。因此即使它是树冲突的一部分,却既不能显示冲突的叠加图标也不能通过右键单击来解决冲突。使用检查修改对话框来获得编辑冲突选项。 TortoiseSVN 能够协助找到合并更改的正确位置,但是需要作一些额外的工作来整理冲突。请牢记: 当进行一次更新操作后,工作副本的基础文件将会包括每一个项目在执行更新操作时版本库中的版本。如果你在进行更新后再撤销更改,工作副本将返回到版本库的状态,而不是你开始进行更改前的状态。


如果有冲突,双机变更列表下红色的一行,在两个版本比较中,选择使用哪个板块,然后标记冲突已解决,再提交,即可成功

wKiom1Pe9L-S_iStAAIe7G3P1qI361.jpg

wKiom1Pe9NnSgNqiAAN6-zu3jK4561.jpgwKioL1Pe9fyCw36nAADyhb5rp5E128.jpg


5,在此目录下新建一个文件,需选择“加入”

wKiom1PbTC-AE0NJAAFB2Hete1Q647.jpg



在服务器端,需要查看svn提交的文件,那么新建一个文件夹,到此文件夹下 执行

/usr/local/svn/bin/svn co svn://192.168.22.240


或者这样:如果添加的目录为html文件夹,那么应该如下操作:

cd /var/www/html

svn import /var/www/html svn://192.168.22.240/html -m "html test1"

svn info

这样做,配置文件还是在/data/svn目录下,客户端更新提交后,在此目录 svn update即可


svn备份

svnadmin hotcopy path/to/repository path/to/backup --clean-logs


svn重启脚本

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#!/bin/bash
# build thisfile in /etc/init.d/svn
# chmod 755/etc/init.d/svn
SVN_HOME= /data/svn
if  [ ! -f  "/usr/local/svn/bin/svnserve"  ]
then
echo  "svnserver startup: cannot start"
exit
fi
case  "$1"  in
start)
echo  "Starting svnserve..."
/usr/local/svn/bin/svnserve  -d --listen-port 3690 -r $SVN_HOME
echo  "Finished!"
;;
stop)
echo  "Stoping svnserve..."
killall svnserve
echo  "Finished!"
;;
restart)
$0 stop
$0 start
;;
*)
echo  "Usage: svn { start | stop | restart } "
exit  1
esac

附软件包地址,http://pan.baidu.com/s/1sXpGj  http://pan.baidu.com/s/1GSxHW 










本文转自 bbotte 51CTO博客,原文链接:http://blog.51cto.com/bbotte/1426394,如需转载请自行联系原作者
目录
相关文章
|
6月前
|
应用服务中间件 Linux 网络安全
Centos 8.0中Nginx配置文件和https正书添加配置
这是一份Nginx配置文件,包含HTTP与HTTPS服务设置。主要功能如下:1) 将HTTP(80端口)请求重定向至HTTPS(443端口),增强安全性;2) 配置SSL证书,支持TLSv1.1至TLSv1.3协议;3) 使用uWSGI与后端应用通信(如Django);4) 静态文件托管路径设为`/root/code/static/`;5) 定制错误页面(404、50x)。适用于Web应用部署场景。
722 87
|
4月前
|
缓存 NoSQL Linux
在CentOS 7系统中彻底移除MongoDB数据库的步骤
以上步骤完成后,MongoDB应该会从您的CentOS 7系统中被彻底移除。在执行上述操作前,请确保已经备份好所有重要数据以防丢失。这些步骤操作需要一些基本的Linux系统管理知识,若您对某一步骤不是非常清楚,请先进行必要的学习或咨询专业人士。在执行系统级操作时,推荐在实施前创建系统快照或备份,以便在出现问题时能够恢复到原先的状态。
423 79
|
3月前
|
存储 关系型数据库 MySQL
在CentOS 8.x上安装Percona Xtrabackup工具备份MySQL数据步骤。
以上就是在CentOS8.x上通过Perconaxtabbackup工具对Mysql进行高效率、高可靠性、无锁定影响地实现在线快速全量及增加式数据库资料保存与恢复流程。通过以上流程可以有效地将Mysql相关资料按需求完成定期或不定期地保存与灾难恢复需求。
332 10
|
4月前
|
存储 Linux Apache
在CentOS上配置SVN至Web目录的自动同步
通过上述配置,每次当SVN仓库中提交新的更改时,`post-commit`钩子将被触发,SVN仓库的内容会自动同步到指定的Web目录,从而实现代码的连续部署。
186 16
|
4月前
|
NoSQL 安全 Linux
设置Redis在CentOS7上的自启动配置
这些步骤总结了在CentOS 7系统上设置Redis服务自启动的过程。这些命令提供了一个直接且明了的方式,确保Redis作为关键组件在系统启动时能自动运行,保障了依赖于Redis服务的应用的稳定性和可用性。
468 9
|
6月前
|
Linux
Centos6配置阿里云yum源报错
在CentOS 6配置阿里云Yum源时,可能出现EPEL仓库访问报错(404 Not Found)。解决方法:编辑`/etc/yum.repos.d/epel.repo`文件,将`enabled`和`gpgcheck`参数设为0 ``` 此设置可解决仓库无法访问的问题。
1618 29
|
5月前
|
Linux
Linux下版本控制器(SVN) -服务器端环境搭建步骤
Linux下版本控制器(SVN) -服务器端环境搭建步骤
271 0
Linux下版本控制器(SVN) -服务器端环境搭建步骤
|
6月前
|
Ubuntu 安全 Linux
CentOS与Ubuntu中防火墙配置命令集汇
有了这些,你就能遨游在 CentOS 和 Ubuntu 的海洋中,频繁地改变你的防火墙设置,快速地应对各种安全威胁,同时也能保证你的系统可以正常工作。出发吧,勇敢的编程者,随着这些命令集的涌动,扬帆起航,走向安全的网络世界!
220 5
|
6月前
|
关系型数据库 MySQL Linux
CentOS系统安装phpStudy的详细步骤和注意事项
一、安装流程 执行官方安装脚本 通过以下命令直接安装官方集成环境(支持CentOS 7及以上版本): ``` yum install -y wget && wget -O install.sh https://www.hsbang.com/ install.sh && sh install.sh ``` 安装过程包含自动下载组件和配置环境,需等待2-5分钟。
336 4