linux svn拒绝,Linux SVN的安装以及配置

装。Linux SVN的安装以及配置

step 1

安装subversion

yum install subversion

step 2

安装apache的Linux SVN模块

yum install mod_dav_svn

step 3

建立Linux SVN仓库文件mkdir /svn

step 4

建立Linux SVN库并修改/svn用户组和用户

svnadmin create /svn/repos/

chown -R apache.apache /svn

step 5

编辑/svn/repos/conf/svnserve.conf

vi /svn/repos/conf/svnserve.conf

5-1.把#anon-access = read

#auth-access = write改为anon-access = none

(如果此处不设置为none的话,则连结SVN时会出现错误“Read access denied for root of

edit”)

auth-access = write

5-2.把#password-db = passwd改为password-db = passwd

5-3.把#authz-db = authz改为authz-db =

authz(此处设置后方可设置svn访问读写权限的配置文件“/svn/repos/conf/authz”)重点注意:”svn:

/svn/repos/conf/svnserve.conf:12: Option

expected“发生时,原因是:是因为subversion读取配置文件svnserve.conf时,无法识别有前置空格的配置,因此前面不能有空格。

step 6

Linux SVN增加用户密码,并设置访问权限

6-1.vi /svn/repos/conf/passwd

如[users]

#user = passwordsvnuser = svnusertest = test

6-2.vi /svn/repos/conf/authz

追加下记文字

[/]svnuser = rw[/]test = r

step 7

把每次提交的文件都和/var/www/html同步,那样,就可以直接访问了信件一个post-commit文件

cp post-commit.tmpl post-commit

vi /svn/repos/hooks/post-commit

写入以下内容:

#!/bin/shexport LANG=en_US.UTF-8

svn update /var/www/html --username svnuser --password

svnusersvn

update /var/www/html --username test --password test

并且,把这个文件改为777 首先,先在服务器端/var/www/html

checkout以后,每次更新就能够向/var/www/html添加了

chmod 777 post-commit

chown apache.apache post-commit

Step 8

运行subversion服务(非必要)

vi /etc/rc.local加入如下命令

#!/bin/sh

#

# This script. will be executed *after* all the other init

scripts.

# You can put your own initialization stuff in here if you

don't

# want to do the full Sys V style. init stuff.

touch /var/lock/subsys/localsvnserve -d -r /svn/repos

step 9

设置apache的Linux SVN配置文件vi

/etc/httpd/conf.d/subversion.conf

/repos>DAV svn SVNParentPath /svn

# # Limit write permission to

list of valid users.

GET PROPFIND OPTIONS REPORT>

# # Require SSL connection for password protection.

# # SSLRequireSSL

#

# AuthType Basic

# AuthName "Authorization Realm"

# AuthUserFile /path/to/passwdfile

# Require valid-user

把对应的#号去掉,并修改路径,改为如上的。

step 10

重启服务器svnserve --daemon --root=/svn --listen-port=3690

step 11

建立project svnProject

mkdir /tmp/svnProject

mkdir /svn/repos/svnProject

svn import /tmp/svnProject file:///svn/repos/svnProject -m

"initial import" //将目录中的文件同步到SVN目录中

step 12

在服务器checkout一次

svn checkout svn://127.0.0.1/repos /var/www/html

step 13

OK了可以用别的机器访问服务器,

例如内网IP:192.168.1.226

svn://192.168.1.226/repos/svnProject

test项目的地址

以后commit到数据仓库的代码,和192.168.1.222服务器的/var/www/html里面的同步了另外,可以每个数据仓库一个项目工程,自己进行相关设置就是了

备注:

SVN 向版本中导入文件操作:

/opt/svn/bin/svn import -m "project" /var/www/dotproject

svn://192.168.6.109/repos1

其中 -m "project"为创建说明

/var/www/dotproject 为需要导入文件的目录

svn://192.168.6.109/repos1 为SVN路径。

SVN 导出版本中的文件操作:

svn checkout svn://192.168.6.109/repos1 dotproject

其中 dotproject为需要导入的目录名.

假设服务器对外访问域名为http://yemaosheng.com/

网站文件存放于/var/www/html/ye/

修改SVN库中post-commit文件

操作如:

cd

/var/www/svn/repos/hooks/

cp post-commit.tmpl post-commit

chown apache:apache post-commit

chmod a+x post-commit

vi post-commit#!/bin/sh

REPOS=”$1″

REV=”$2″

svn update /var/www/html/ye –username svnuser1 –password

123456

PS:以上操作应该都没错,但我在我FC8的服务器上测试了没有效果,估计是UTF-8的问题.

我只好先用crontab每5分钟运行一次sh来代替.

#!/bin/sh

export LANG=zh_CN.UTF-8 #注:这一行害我折腾了几小时

svn update /var/www/html/ye –username root –password

123456

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值