SVN系列二 SVN的安装配置(linux)

简介:
虽然说是SVN系列,但是想要真正的理解一个前人花费多年时间去做的一个工程,并不是短时间之内可以做到的!还有就是看别人的文章 终究不及自己做一遍来的深刻,
另外要说的一点就是,人们写的文章只能作为参考,权威的,还是官方的文档.(一点写在前面的废话!)
当然了了解一个事物,最好的莫过于搞一个来自己动手摸索.就像是当初接触linux的时候一样,让我看了半天的那一大堆命令,还不如在自己的机器上敲个十遍!(当然说的只是初步的接触,深入的了解 看文档还是必须的!)
扯淡多了会上瘾,为了不上瘾,开始吧!
准备工作:
  一套操作系统(linux)  连接的网络  (没有的话下载的软件包(源码包,rpm包,)也成),源码的下载地址.
在这里插一句话,关于编译安装和rpm软件包安装,个人觉得如果没有什么特殊需求的话,没有必要自己编译安装,既耗时间又耗费精力,编译完了时间一久,自己都不知道放哪边去了.
  所以我选择最简单,也是比较规范的一种安装方式 yum安装(redhat系列).
[root@server ~]# yum install -y subversion-* 
Loaded plugins: fastestmirror 
Loading mirror speeds from cached hostfile 
c5-media                                                 | 2.1 kB     00:00     
Setting up Install Process 
Package subversion-1.4.2-4.el5_3.1.i386 already installed and latest version 
Resolving Dependencies 
There are unfinished transactions remaining. You might consider running yum-complete-transaction first to finish them. 
The program yum-complete-transaction is found in the yum-utils package. 
.
.
.
Dependencies Resolved
================================================================================ 
 Package                 Arch       Version                Repository      Size 
================================================================================ 
Installing: 
 subversion-devel        i386       1.4.2-4.el5_3.1        c5-media       199 k 
 subversion-javahl       i386       1.4.2-4.el5_3.1        c5-media       124 k 
 subversion-perl         i386       1.4.2-4.el5_3.1        c5-media       753 k 
 subversion-ruby         i386       1.4.2-4.el5_3.1        c5-media       339 k 
Installing for dependencies: 
 apr-devel               i386       1.2.7-11.el5_3.1       c5-media       231 k 
 apr-util-devel          i386       1.2.7-7.el5_3.2        c5-media        53 k 
 ruby-libs               i386       1.8.5-5.el5_3.7        c5-media       1.6 M
Transaction Summary 
================================================================================ 
Install      7 Package(s)         
Update       0 Package(s)         
Remove       0 Package(s)        
Total download size: 3.3 M 
Downloading Packages: 
 .
.
.
-------------------------------------------------------------------------------- 
Total                                           2.8 MB/s | 3.3 MB     00:01     
Running rpm_check_debug 
Running Transaction Test 
Finished Transaction Test 
Transaction Test Succeeded 
                                      7/7
Installed: 
  subversion-devel.i386 0:1.4.2-4.el5_3.1                                       
  subversion-javahl.i386 0:1.4.2-4.el5_3.1                                      
  subversion-perl.i386 0:1.4.2-4.el5_3.1                                        
  subversion-ruby.i386 0:1.4.2-4.el5_3.1                                       
Dependency Installed: 
  apr-devel.i386 0:1.2.7-11.el5_3.1    apr-util-devel.i386 0:1.2.7-7.el5_3.2   
  ruby-libs.i386 0:1.8.5-5.el5_3.7   
Complete!

yum安装到这里,只需要修改几个配置文件就可以使用用了(仅仅是使用),在这里我选用的是svnserver这一种管理方式,为啥呢?
因为设置简单,比WebDAV快,不需要建立系统帐号,不会在网络中传输密码!
当然在配置之前我们要建立一个版本库,可以使用以下命令来建立版本库.
[root@server /]# svnadmin create /opt/svn/repos //创建版本库
[root@server /]# ll -sh /opt/svn/repos/  //查看建立的配置文件
total 56K
8.0K drwxr-xr-x 2 root root 4.0K Feb  2 06:43 conf
8.0K drwxr-xr-x 2 root root 4.0K Feb  2 06:43 dav
8.0K drwxr-sr-x 5 root root 4.0K Feb  2 06:43 db
8.0K -r--r--r-- 1 root root    2 Feb  2 06:43 format
8.0K drwxr-xr-x 2 root root 4.0K Feb  2 06:43 hooks
8.0K drwxr-xr-x 2 root root 4.0K Feb  2 06:43 locks
8.0K -rw-r--r-- 1 root root  229 Feb  2 06:43 README.txt
[root@server /]# 
这个命令创建了一个新目录 /opt/svn/repos,并在其中创建了一个 Subversion 版本库。这个目录里主要保存了数据库文件(还有其它一些文件).
假定已经有一些需要导入到 Subversion 版本库的条目(一组文件和目录)。
接下来,我们需要把这些条目整理到一个名为 jadeshow 的目录(或者其它任意目录)里。在这个
目录下,创建三个顶级子目录:branches,tags 和 trunk,(这个只是svn的惯例,你也可以不这么做)。将所有需版本化的数据保存到 trunk
目录下,同时保持 branches 和 tags 目录为空:
/tmp/jadeshow/branches/
/tmp/jadeshow/tags/
/tmp/jadeshow/trunk/
可以使用如下命令导入老的文件
[root@server /]# svn import /tmp/jadeshow/\
file:///opt/svn/repos/jadeshow -m "inital import"

Adding         /tmp/jadeshow/trunk
Adding         /tmp/jadeshow/branches
Adding         /tmp/jadeshow/tags

Committed revision 1.
[root@server /]# 
(如果没有的话那么这个layer可以跳过)
接下来我们配置三个文件就可以使用svn了!简单吧。
[root@server conf]# pwd
/opt/svn/repos/conf               //配置文件的主目录
root@server conf]# grep -v "#" passwd   //passwd中起作用的配置

[ users]
 jadeshow = jadeshow   //用户名 jadeshow 密码 jadeshow
[root@server conf]# grep -v "#" authz   //认证文件       

[groups]
admin = jadeshow        //jadeshowshow属于admin组

[repos:/]              //repos库根目录的权限
@admin = rw            //@表示组 admin组有读写权限
* = r                  //其他人有读权限
[root@server conf]# grep -v "#" svnserve.conf          


[general]
 anon-access = none
 auth-access = write          
 password-db = passwd         //用户文件      
 authz-db = authz            //认证文件
 realm = /opt/svn/repos       //库所在
[root@server conf]# 
配置完成.使用svnserver 启动

[root@server conf]# svnserve -d -r /opt/svn/repos/   // 更多的用法可以参见svnserve --help  
(检查svn是否启动 )

[root@server conf]# netstat -antp |grep svn
tcp        0      0 :::3690                     :::*                        LISTEN      5576/svnserve           //svn已经启动为3690端口
[root@server conf]# ps -ef |grep svn
root      5576     1  0 07:30 ?        00:00:00 svnserve -d -r /opt/svn/repos/       //   其实更安全的办法是使用非root用户来启动.








     本文转自 珏石头 51CTO博客,原文链接:http://blog.51cto.com/gavinshaw/277489 ,如需转载请自行联系原作者

相关文章
|
7月前
|
Oracle Java 关系型数据库
Linux环境安装配置JDK11
Linux环境安装配置JDK11
688 0
|
7月前
|
存储 网络协议 Ubuntu
Linux环境下的SVN服务器搭建并结合内网穿透实现远程连接
Linux环境下的SVN服务器搭建并结合内网穿透实现远程连接
243 0
|
7月前
|
NoSQL Linux Redis
Linux系统中安装redis+redis后台启动+常见相关配置
Linux系统中安装redis+redis后台启动+常见相关配置
|
7月前
|
分布式计算 关系型数据库 MySQL
Sqoop【部署 01】CentOS Linux release 7.5 安装配置 sqoop-1.4.7 解决警告并验证(附Sqoop1+Sqoop2最新版安装包+MySQL驱动包资源)
【2月更文挑战第8天】Sqoop CentOS Linux release 7.5 安装配置 sqoop-1.4.7 解决警告并验证(附Sqoop1+Sqoop2最新版安装包+MySQL驱动包资源)
304 1
|
5月前
|
Java Linux
linux 安装配置 jdk8
linux 安装配置 jdk8
369 3
|
7月前
|
Java Linux
Flume【环境搭建 01】CentOS Linux release 7.5 安装配置 apache-flume-1.9.0 并验证
【2月更文挑战第16天】Flume【环境搭建 01】CentOS Linux release 7.5 安装配置 apache-flume-1.9.0 并验证
137 0
|
4月前
|
Linux 数据安全/隐私保护
Linux下svn服务端的安装与配置
Linux下svn服务端的安装与配置
64 0
|
5月前
|
Ubuntu Linux
Linux软件安装-Linux系统靠yum命令安装软件,yum命令是一个RPM包软件管理器,用于自动化安装配置Linux软件,.rpm是Linux包下的软件,yum install下载 wget re
Linux软件安装-Linux系统靠yum命令安装软件,yum命令是一个RPM包软件管理器,用于自动化安装配置Linux软件,.rpm是Linux包下的软件,yum install下载 wget re
|
7月前
|
存储 Linux
linux上SVN出现 "Unable to connect to a repository at URL 'svn://xx.xx.xx.xx/xxx' 和 No repository ...
centos上安装了svn, 有时候会不知道什么原因出现客户端小乌龟无法连接或无法提交等情况
268 5
|
7月前
|
Web App开发 安全 Unix
Linux 配置FTP服务器 + vsftpd服务安装配置 (Good篇)
Linux 配置FTP服务器 + vsftpd服务安装配置 (Good篇)
197 1