Svn服务器的安装和配置

摘要:
Psaux|grepsvn查找所有svn启动的进程kill-92505杀死找到的2505个svn进程svncheckoutsvn://172.19.5.2/sunny/data0/htdocs/blog//将版本库文件签出到指定目录。svnup//自动更新文件。在vi/usr/local/svn/suny/books/post-commit中添加#!限制不同用户对不同版本库的操作权限。修改版本库中conf目录下的authz文件以配置Sunny版本库。viauthz[groups]teacher=Sunny,Sunny1[Sunny://]/在版本库和目录@teacher=rw//下指定权限。团队用户权限为读写*=r//其他用户仅具有读取权限。保存并退出vipasswd。在组[users]中设置用户的帐户和密码Sunny=12346unny1=12346

1.安装svn服务器端软件

从镜像服务器或者YUM源下载安装SVN服务器软件:yum install subversion     

mkdir /usr/local/svn     //创建SVN安装目录

chmod -R 777 svn      //修改目录权限为777

svnadmin create /usr/local/svn/sunny  //创建一个SVN版本仓库sunny(sunny可以自定义)

cd  /usr/local/svn/sunny/conf    //进入sunny版本仓库下的配置文件目录

下面要修改这个目录下的三个配置文件

(1)vi svnserve.conf    //配置版本库信息和用户文件和用户密码文件的路径、版本库路径,把

# anon-access = read

# auth-access = write

# password-db = passwd

//这四行,前面的#号和空格去掉(注意去掉#要顶格写,不要留有多余空格),变成

anon-access = none      //匿名访问,改成none

auth-access = write

password-db = passwd

realm = sunny           //改成自己的版本库名称

保存退出

(2)vi authz     //文件,创建SVN组和组用户的权限

[group]

sunny = gep,wce //创建一个sunny的组,并指定两个用户gepwce

[/]             //制定根目录下的权限

@sunny = rw     //sunny组用户权限为读写

* = r           //其他用户只有读权限

保存退出

(3) vi passwd   //创建或修改用户密码

[users]

gep = 123456    //用户名为gep的用户的密码为123456

wce = 123456    //。。。

保存退出

启动SVN服务器:

//这里采用多版本库的方式启动  

svnserve -d -r /usr/local/svn/

如果是单版本库可以添加一行

svnserve -d -r /usr/local/svn/sunny

然后要设置自启动

` 打开自启动文件添加

/usr/bin/svnserve -d -r /usr/local/svn/

到此为止可以从服务端检出文件了.

svn命令:

netstat -tnl |grep :3690   查看svn是否启动

安装成功!

ps aux |grep  svn  查找所有svn启动的进程

kill -9 2505    杀死2505这个查找到的svn进程

svn checkout svn://172.19.5.2/sunny /data0/htdocs/blog  //检出一份版本库文件到指定目录

svn up                        //更新文件

自动更新

vi /usr/local/svn/sunny/hooks/post-commit中加入

#!/bin/sh

#设置一些变量

SVN=/usr/bin/svn

WEB=/home/testsvn #要更新的目录

export LANG=en_US.UTF-8

$SVN update $WEB --username xxx --password xxx

其中SVN=右边改成 svn 命令位置 一般默认为/usr/bin/svn

    WEB=右边改成你实际的web目录

赋予可执行权限

chmod 777 /usr/local/svn/sunny/hooks/post-commit

安装完毕

=========================================================================

其他操作

#svn commit -m "注释" xxx.php  //提交文件

svn ci -m'aaa' test.php       //提交文件

#svn add file               //新建文件并添加到svn

svn add *.php               //(添加当前目录下所有的php文件)

svn delete test.php         //删除test.php

svn log test.php            //查看test文件的log信息

svn cleanup                 //清理当前目录

svn switch --relocate svn://192.168.1.253  svn://172.19.10.250      //重新定位SVN版本库地址

// SVN版本库起动方式,现在SVN下面有 sunnytest 两个版本库

1:单版本库起动    svnserve -d -r /usr/local/svn/sunny

2:多版本库起动    svnserve -d -r /usr/local/svn

区别在于起动svn时候的命令中的启动参数-r指定的目录。

限制不同的用户对不同的版本库操作权限,修改版本库中的conf目录下的 authz文件

以配置 sunny 版本库为例

vi authz

[groups]

teacher = sunny,sunny1

[sunny:/]             //指定版本库跟目录下的权限

@teacher = rw     //teacher组用户权限为读写

* = r           //其他用户只有读权限

保存退出

vi passwd 设置组中用户的账号和密码

[users]

sunny  = 123456

sunny1 = 123456

免责声明:文章转载自《Svn服务器的安装和配置》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇算法交易系列研究之一word文档下划线无法显示的解决方法下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Docker之构建上下文详解

昨天写了使用 Dockerfile 定制镜像。其中构建上下文这一块没有写,今天把这一块单独拿出来写一下。 Docker镜像构建 简单说下构建镜像步骤: cd Dockerfile 所在目录; 执行 docker build 构建命令: docker build -t imageName:imageTag . 通过上面的工作流,很容易形成这样的理解误...

认识solr结构,了解核心的文件目录

下载solr并解压后,发现solr的目录里有很多的东西,此时我们可能会感到很恐慌,不知如何下手,下面让我带你认识它。 1、解压后的solr目录结构如下: 虽然里面有很多的文件,但是我们需要的其实就两个,如上图画有红框的文件solr和webapps,其他的文件你可以先忽略它,有兴趣可以看看《五分钟solr教程》。 2、部署到tomcat 根据《solr部署...

Java路径问题解决方案收集

Java路径中的空格问题 1, TestURL().class.getResource("").getPath()或TestURL().class.getResource("").getFile()获得的路径,不能被FileReader()和FileWriter()直接应用。   原因是URL对空格,特殊字符(%,#,[]等)和中文进行了编码处理。   例...

Error:Unexpected lock protocol found in lock file. Expected 3, found 49.

  关于这个错误,今天研究了两三个小时的时间,查看网上的教程都解决不了问题,后来发现是自己的文件目录导入的有问题。   现在把自己关于解决这个问题的详细步骤说明一下。 (1)首先,你先查看一下自己导入文件的目录有没有错误。(最好就是目录中不带有中文) (2)先试着从新启动一下: (4)重启之后没有解决问题的,那么要把C盘用户目录下的 .gradle文...

shell遍历文件目录,监听文件变化,拼接字符串

最近利用业余时间学习了shell 并做了个例子 实现的功能是 : 监听demo文件夹下的文件,只要新增了  .js的文件就把对应的文件名重组,拼接, 最后写入到demo.js里面. 文件结构如下 : demo.sh代码如下 while : ; do if [ -f oldfiles.log ] then #按照时间排序 并取第一行 就是最...

ftp文件上传下载命令

介绍:从本地以用户wasqry登录的机器1*.1**.21.67上通过ftp远程登录到ftp服务器上,登录用户名是lte****,以下为使用该连接做的实验。  查看远程ftp服务器上用户lte****相应目录下的文件所使用的命令为:ls,登录到ftp后在ftp命令提示符下查看本地机器用户wasqry相应目录下文件的命令是:!ls。查询ftp命令可在提示符下...