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,如需转载请自行联系原作者
目录
相关文章
|
2月前
|
Linux 开发工具 数据安全/隐私保护
Centos7:自动化配置vim | suoders信任列表添加普通用户
Centos7:自动化配置vim | suoders信任列表添加普通用户
22 0
|
16天前
|
Java Linux
为centos7配置jdk
为centos7配置jdk
25 3
|
23天前
|
网络协议 安全 Linux
linux配置防火墙 Centos7下 添加 端口白名单
linux配置防火墙 Centos7下 添加 端口白名单
45 0
|
9天前
|
Linux 网络安全 开发工具
Centos6.5安装并配置Telnet服务
该内容是一个关于如何安装配置Telnet服务的教程。首先,通过yum安装vim、xinetd、telnet和telnet-server。接着,修改/etc/xinetd.d/telnet配置文件,将disable改为no,并设置访问限制(如限定特定网段和时间)。关闭防火墙,重启服务。创建测试用户后,分别使用CentOS和Windows的Telnet客户端进行连接测试,显示成功,实验完成。
18 1
|
6天前
|
缓存 Linux
Centos阿里云源配置
Centos阿里云源配置
20 0
|
7天前
|
网络协议 Java 应用服务中间件
记录_centos7离线环境和虚拟机共享文件安装jdk和tomcat(配置环境变量)
记录_centos7离线环境和虚拟机共享文件安装jdk和tomcat(配置环境变量)
6 0
|
9天前
|
运维 Apache 数据安全/隐私保护
CentOS6.5搭建SVN服务器(Apache+SVN)
CentOS6.5搭建SVN服务器(Apache+SVN)
|
9天前
|
Linux 网络安全 开发工具
Centos7 sendmail服务安装与配置
该文本描述了在Linux系统中设置邮件服务的步骤。首先,启用httpd的邮件发送功能,然后安装sendmail、sendmail-cf和dovecot。接着配置/sendmail.mc,设定IP和邮件域名。在dovecot配置文件中启用imap、pop3和lmtp协议,取消明文认证限制,设定mail_location,并开启SSL。创建用户mail3和mail4,给予相应权限。停止postfix服务,编辑访问控制、提交配置、本地主机名等文件。最后,重置sendmail、dovecot和saslauthd服务。
29 0
|
9天前
|
运维 网络协议 Linux
【运维系列】Centos7安装并配置PXE服务
PXE是Intel开发的预启动执行环境,允许工作站通过网络从远程服务器启动操作系统。它依赖DHCP分配IP,DNS服务分配主机名,TFTP提供引导程序,HTTP/FTP/NFS提供安装源。要部署PXE服务器,需关闭selinux和防火墙,安装dhcpd、httpd、tftp、xinetd及相关服务,配置引导文件和Centos7安装源。最后,通过syslinux安装引导文件,并创建pxelinux.cfg/default配置文件来定义启动参数。
45 0
|
9天前
|
运维 网络协议 Linux
【运维系列】Centos7安装并配置postfix服务
安装CentOS7的Postfix和Dovecot,配置Postfix的`main.cf`文件,包括修改完全域名、允许所有IP、启用邮箱等。然后,配置Dovecot的多个配置文件以启用auth服务和调整相关设置。重启Postfix和Dovecot,设置开机自启,并关闭防火墙进行测试。最后,创建邮箱账户并在Windows邮箱客户端中添加账户设置。
13 0