初学者 熟悉基本centos6.5命令 以及 如何搭建SVN+http访问

2019-11-07 19:38:30 浏览数 (1)

1、安裝SVN

代码语言:javascript复制
yum install subversion

2、svnserve --version

代码语言:javascript复制
[root@121 ~]# svn -version
svn: invalid option character: e
Type 'svn help' for usage.

表示安裝成功

3、创建SVN版本库也就是SVN文件存放地址跟目录

代码语言:javascript复制
cd /mnt
mkdir data_10G 
cd data_10G
mkdir svn

4、创建版本库

代码语言:javascript复制
svnadmin create /mnt/data_10G/svn

5、当执行这个命令的时候 会出现提示 y/n 是否下载。你写上y就可以了。 然后当出现 complete! 这个就安装成功了!(这个截图我就不拿了。)

6、创建了版本库之后 你的SVN 这个库目录下 会有一下的目录结构

这个目录应该很熟悉了

conf-----svn的启动配置文件参数

db------这个是你的SVN 上传的文件存储位置。这个是看不到原文件的 ,

因为SVN服务器端不是简单将上传的文件一个一个存放起来的; SVN服务器端默认采用的FSFS格式是将每次commit的内容增量方式存放的,每个增量包存成1个文件,这个增量包中包括了这次commit的全部数据。 也就是说你不可能在服务器端存放该版本库的文件夹下找到你上传的某个文件。

其他目录请参考下面参数详情:

路径

类型

作用

conf

目录

存放版本库所用配置文件的目录

dav

目录

供mod_dav_svn使用

db

目录

版本数据存储目录

db/fs-type

文件

版本库数据真实存储格式,SVN有fsfs和bdb两种存储格式

db/revprops

目录

记录版本属性

db/revs

目录

版本库数据存储真实目录

db/uuid

文件

存储版本库唯一标识号,参考《svn版本库标识uuid简述》

db/txn-current

文件

记录当前事务

format

文件

存储一个整数的文件,此整数代表库层次结构版本

hooks

目录

存放版本库勾子目录

locks

目录

存储库锁目录,用来跟踪库的访问者

目录参考资料:https://www.zhihu.com/question/46768239/answer/124160836

7、下面就是帐号密码 ,权限配置了。。再conf文件目录下面

authz---这个是我们的权限

passwd--帐号密码

svnserve.conf --svn服务启动读取的参数

1) 首先设置帐号:

vi系统默认但是不好用

vim 编辑更强大 也可以用xftp 直接修改 如果没有vim编辑就去安装一个 安装步骤:

首先:检查是否安装vim rpm -qa|grep vim

然后后:安装vim yum -y install vim-minimal vim-common vim-enhanced

缺少什么就安装什么:比如上面 缺少 vim-minimal vim-common vim-enhanced 这三个。

进入这个窗口 按一下 I 键 进入编辑模式

然后数据用户名=密码:jason=123

注意:名字前面不能有空格,等于号也不能有空格

修改完成后 要保存:按下 esc 键 然后 shift ;(L 旁边那个键)

然后按下 wq 意思是 写入并退出(保存并且退出)

那么这个帐号就创建好了。

下面给这些帐号设置权限:

重复上面的操作进入编辑模式

然后写上

代码语言:javascript复制
[/]
lixi=rw
pa=rw
*=

对账户设置rw 这是读写权限 *= 这个是其他账户不能访问

另外关于这个分组权限,什么的 可以参考其他资料。这里不细节描述

同样的保存好了之后下面就配置 svnserve.conf

同样的打开我们的svnserve.conf

把上图的这些打开,就是把前面的注释#号删除

保存就好了

下面就是配置httpd

安装httpd

代码语言:javascript复制
yum install httpd -y  

然后启动

代码语言:javascript复制
/etc/rc.d/init.d/httpd start  

参考资料:https://blog.csdn.net/ixiaoyou/article/details/79160622

然后为SVN 配置我们的路径

#vim /etc/httpd/conf/httpd.conf

在文件最后添加一下代码:

  • <Location /svn>
  • DAV svn
  • SVNPath /svn/project/repos/
  • AuthType Basic
  • AuthName "svn for project"
  • AuthUserFile /svn/project/repos/conf/webpasswd
  • AuthzSVNAccessFile /svn/project/repos/conf/authz
  • Satisfy all
  • Require valid-user
  • </Location>

启动http

#/etc/init.d/httpd restart

结果报如下错误

这是因为,系统没有安装mod_dav_svn,安装一下就可以了

#yum install mod_dav_svn

#yum install mod_authz_svn

#chmod -R o rw /svn

//加下权限 不然用http访问会报 SVN Can’t open file ‘/XXX/xxx/db/txn-current-lock’错误

再启动下就可以了

然后再启动我们的SVN

  1. 启动svn #svnserve -d -r /svn
  2. 查看服务 #ps -ef|grep svn
  3. 关闭svn服务 #kill -9 pid

访问http://IP/svn/ 就可以了,输入账号密码就OK了,客户端可以下在小乌龟。。。。

参考资料:https://my.oschina.net/aiweiqing/blog/778326

0 人点赞