【SVN】02 环境搭建

一些资料:

Windows下的 Server + Client 环境搭建:

https://www.acfun.cn/v/ac17274924_84

但是一般情况是Linux系统作为服务端

https://www.cnblogs.com/-mrl/p/8980244.html

一、Linux服务端搭建

检查Linux系统是否存在Subversion

svn --version

有则会输出显示,没有则找不到该命令

[root@VM-0-7-centos ~]# svn --version
svn, version 1.7.14 (r1542130)
   compiled Apr 11 2018, 02:40:28

Copyright (C) 2013 The Apache Software Foundation.
This software consists of contributions made by many people; see the NOTICE
file for more information.
Subversion is open source software, see http://subversion.apache.org/

The following repository access (RA) modules are available:

* ra_neon : Module for accessing a repository via WebDAV protocol using Neon.
  - handles 'http' scheme
  - handles 'https' scheme
* ra_svn : Module for accessing a repository using the svn network protocol.
  - with Cyrus SASL authentication
  - handles 'svn' scheme
* ra_local : Module for accessing a repository on local disk.
  - handles 'file' scheme

[root@VM-0-7-centos ~]# 

Linux 安装SVN服务

yum install subversion -y

yum安装输出

[root@VM-0-7-centos ~]# yum -y install subversion
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
docker-ce-stable                                                                                                                                                                                                                           | 3.5 kB  00:00:00     
epel                                                                                                                                                                                                                                       | 4.7 kB  00:00:00     
extras                                                                                                                                                                                                                                     | 2.9 kB  00:00:00     
os                                                                                                                                                                                                                                         | 3.6 kB  00:00:00     
updates                                                                                                                                                                                                                                    | 2.9 kB  00:00:00     
(1/2): epel/7/x86_64/updateinfo                                                                                                                                                                                                            | 1.0 MB  00:00:00     
(2/2): epel/7/x86_64/primary_db                                                                                                                                                                                                            | 6.9 MB  00:00:00     
Resolving Dependencies
--> Running transaction check
---> Package subversion.x86_64 0:1.7.14-14.el7 will be installed
--> Processing Dependency: subversion-libs(x86-64) = 1.7.14-14.el7 for package: subversion-1.7.14-14.el7.x86_64
--> Processing Dependency: libsvn_wc-1.so.0()(64bit) for package: subversion-1.7.14-14.el7.x86_64
--> Processing Dependency: libsvn_subr-1.so.0()(64bit) for package: subversion-1.7.14-14.el7.x86_64
--> Processing Dependency: libsvn_repos-1.so.0()(64bit) for package: subversion-1.7.14-14.el7.x86_64
--> Processing Dependency: libsvn_ra_svn-1.so.0()(64bit) for package: subversion-1.7.14-14.el7.x86_64
--> Processing Dependency: libsvn_ra_neon-1.so.0()(64bit) for package: subversion-1.7.14-14.el7.x86_64
--> Processing Dependency: libsvn_ra_local-1.so.0()(64bit) for package: subversion-1.7.14-14.el7.x86_64
--> Processing Dependency: libsvn_ra-1.so.0()(64bit) for package: subversion-1.7.14-14.el7.x86_64
--> Processing Dependency: libsvn_fs_util-1.so.0()(64bit) for package: subversion-1.7.14-14.el7.x86_64
--> Processing Dependency: libsvn_fs_fs-1.so.0()(64bit) for package: subversion-1.7.14-14.el7.x86_64
--> Processing Dependency: libsvn_fs_base-1.so.0()(64bit) for package: subversion-1.7.14-14.el7.x86_64
--> Processing Dependency: libsvn_fs-1.so.0()(64bit) for package: subversion-1.7.14-14.el7.x86_64
--> Processing Dependency: libsvn_diff-1.so.0()(64bit) for package: subversion-1.7.14-14.el7.x86_64
--> Processing Dependency: libsvn_delta-1.so.0()(64bit) for package: subversion-1.7.14-14.el7.x86_64
--> Processing Dependency: libsvn_client-1.so.0()(64bit) for package: subversion-1.7.14-14.el7.x86_64
--> Processing Dependency: libneon.so.27()(64bit) for package: subversion-1.7.14-14.el7.x86_64
--> Processing Dependency: libaprutil-1.so.0()(64bit) for package: subversion-1.7.14-14.el7.x86_64
--> Processing Dependency: libapr-1.so.0()(64bit) for package: subversion-1.7.14-14.el7.x86_64
--> Running transaction check
---> Package apr.x86_64 0:1.4.8-5.el7 will be installed
---> Package apr-util.x86_64 0:1.5.2-6.el7 will be installed
---> Package neon.x86_64 0:0.30.0-4.el7 will be installed
--> Processing Dependency: libgnutls.so.28(GNUTLS_3_0_0)(64bit) for package: neon-0.30.0-4.el7.x86_64
--> Processing Dependency: libgnutls.so.28(GNUTLS_2_12)(64bit) for package: neon-0.30.0-4.el7.x86_64
--> Processing Dependency: libgnutls.so.28(GNUTLS_1_4)(64bit) for package: neon-0.30.0-4.el7.x86_64
--> Processing Dependency: libpakchois.so.0()(64bit) for package: neon-0.30.0-4.el7.x86_64
--> Processing Dependency: libgnutls.so.28()(64bit) for package: neon-0.30.0-4.el7.x86_64
---> Package subversion-libs.x86_64 0:1.7.14-14.el7 will be installed
--> Running transaction check
---> Package gnutls.x86_64 0:3.3.29-9.el7_6 will be installed
--> Processing Dependency: trousers >= 0.3.11.2 for package: gnutls-3.3.29-9.el7_6.x86_64
--> Processing Dependency: libnettle.so.4()(64bit) for package: gnutls-3.3.29-9.el7_6.x86_64
--> Processing Dependency: libhogweed.so.2()(64bit) for package: gnutls-3.3.29-9.el7_6.x86_64
---> Package pakchois.x86_64 0:0.4-10.el7 will be installed
--> Running transaction check
---> Package nettle.x86_64 0:2.7.1-8.el7 will be installed
---> Package trousers.x86_64 0:0.3.14-2.el7 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

==================================================================================================================================================================================================================================================================
 Package                                                             Arch                                                       Version                                                              Repository                                              Size
==================================================================================================================================================================================================================================================================
Installing:
 subversion                                                          x86_64                                                     1.7.14-14.el7                                                        os                                                     1.0 M
Installing for dependencies:
 apr                                                                 x86_64                                                     1.4.8-5.el7                                                          os                                                     103 k
 apr-util                                                            x86_64                                                     1.5.2-6.el7                                                          os                                                      92 k
 gnutls                                                              x86_64                                                     3.3.29-9.el7_6                                                       os                                                     680 k
 neon                                                                x86_64                                                     0.30.0-4.el7                                                         os                                                     166 k
 nettle                                                              x86_64                                                     2.7.1-8.el7                                                          os                                                     327 k
 pakchois                                                            x86_64                                                     0.4-10.el7                                                           os                                                      14 k
 subversion-libs                                                     x86_64                                                     1.7.14-14.el7                                                        os                                                     922 k
 trousers                                                            x86_64                                                     0.3.14-2.el7                                                         os                                                     289 k

Transaction Summary
==================================================================================================================================================================================================================================================================
Install  1 Package (+8 Dependent packages)

Total download size: 3.5 M
Installed size: 12 M
Downloading packages:
(1/9): apr-util-1.5.2-6.el7.x86_64.rpm                                                                                                                                                                                                     |  92 kB  00:00:00     
(2/9): apr-1.4.8-5.el7.x86_64.rpm                                                                                                                                                                                                          | 103 kB  00:00:00     
(3/9): neon-0.30.0-4.el7.x86_64.rpm                                                                                                                                                                                                        | 166 kB  00:00:00     
(4/9): gnutls-3.3.29-9.el7_6.x86_64.rpm                                                                                                                                                                                                    | 680 kB  00:00:00     
(5/9): pakchois-0.4-10.el7.x86_64.rpm                                                                                                                                                                                                      |  14 kB  00:00:00     
(6/9): nettle-2.7.1-8.el7.x86_64.rpm                                                                                                                                                                                                       | 327 kB  00:00:00     
(7/9): subversion-1.7.14-14.el7.x86_64.rpm                                                                                                                                                                                                 | 1.0 MB  00:00:00     
(8/9): trousers-0.3.14-2.el7.x86_64.rpm                                                                                                                                                                                                    | 289 kB  00:00:00     
(9/9): subversion-libs-1.7.14-14.el7.x86_64.rpm                                                                                                                                                                                            | 922 kB  00:00:00     
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                                                                                                                                             3.6 MB/s | 3.5 MB  00:00:00     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : apr-1.4.8-5.el7.x86_64                                                                                                                                                                                                                         1/9 
  Installing : apr-util-1.5.2-6.el7.x86_64                                                                                                                                                                                                                    2/9 
  Installing : pakchois-0.4-10.el7.x86_64                                                                                                                                                                                                                     3/9 
  Installing : nettle-2.7.1-8.el7.x86_64                                                                                                                                                                                                                      4/9 
  Installing : trousers-0.3.14-2.el7.x86_64                                                                                                                                                                                                                   5/9 
  Installing : gnutls-3.3.29-9.el7_6.x86_64                                                                                                                                                                                                                   6/9 
  Installing : neon-0.30.0-4.el7.x86_64                                                                                                                                                                                                                       7/9 
  Installing : subversion-libs-1.7.14-14.el7.x86_64                                                                                                                                                                                                           8/9 
  Installing : subversion-1.7.14-14.el7.x86_64                                                                                                                                                                                                                9/9 
  Verifying  : trousers-0.3.14-2.el7.x86_64                                                                                                                                                                                                                   1/9 
  Verifying  : subversion-1.7.14-14.el7.x86_64                                                                                                                                                                                                                2/9 
  Verifying  : subversion-libs-1.7.14-14.el7.x86_64                                                                                                                                                                                                           3/9 
  Verifying  : apr-util-1.5.2-6.el7.x86_64                                                                                                                                                                                                                    4/9 
  Verifying  : apr-1.4.8-5.el7.x86_64                                                                                                                                                                                                                         5/9 
  Verifying  : nettle-2.7.1-8.el7.x86_64                                                                                                                                                                                                                      6/9 
  Verifying  : neon-0.30.0-4.el7.x86_64                                                                                                                                                                                                                       7/9 
  Verifying  : pakchois-0.4-10.el7.x86_64                                                                                                                                                                                                                     8/9 
  Verifying  : gnutls-3.3.29-9.el7_6.x86_64                                                                                                                                                                                                                   9/9 

Installed:
  subversion.x86_64 0:1.7.14-14.el7                                                                                                                                                                                                                               

Dependency Installed:
  apr.x86_64 0:1.4.8-5.el7   apr-util.x86_64 0:1.5.2-6.el7   gnutls.x86_64 0:3.3.29-9.el7_6   neon.x86_64 0:0.30.0-4.el7   nettle.x86_64 0:2.7.1-8.el7   pakchois.x86_64 0:0.4-10.el7   subversion-libs.x86_64 0:1.7.14-14.el7   trousers.x86_64 0:0.3.14-2.el7  

Complete!
[root@VM-0-7-centos ~]#

创建版本仓库的管理目录

svn支持多个仓库实例,所以这个目录是多个仓库的根目录

mkdir /var/svn-repo

创建一个版本仓库目录

mkdir /var/svn-repo/first-repo

使用SVN命令将仓库目录初始化为SVN仓库

一定要先保证目录是存在的情况,这个命令才会执行,不然SVN报错找不到目录不会初始化

svnadmin create /var/svn-repo/first-repo

同样的,如果要创建多个仓库就以此类推

mkdir /var/svn-repo/xxx-repo1
mkdir /var/svn-repo/xxx-repo2
mkdir /var/svn-repo/xxx-repo3
......

svnadmin create /var/svn-repo/xxx-repo1
svnadmin create /var/svn-repo/xxx-repo2
svnadmin create /var/svn-repo/xxx-repo3
......

初始化之后的仓库中会有以下文件与目录:

[root@VM-0-7-centos ~]# cd /var/svn-repo/temp-repo
[root@VM-0-7-centos temp-repo]# ll
total 24
drwxr-xr-x 2 root root 4096 Sep 20 23:14 conf
drwxr-sr-x 6 root root 4096 Sep 20 23:14 db
-r--r--r-- 1 root root    2 Sep 20 23:14 format
drwxr-xr-x 2 root root 4096 Sep 20 23:14 hooks
drwxr-xr-x 2 root root 4096 Sep 20 23:14 locks
-rw-r--r-- 1 root root  229 Sep 20 23:14 README.txt
[root@VM-0-7-centos temp-repo]#

里面的各种文件这里不详细描述,在上面提供的博客中有介绍

 

更改SVN的权限配置:

进入仓库中的conf仓库配置目录

编辑authz文件

vim authz

追加用户和对应的执行权限

# admin是用户名称,可随意命名,但是rw 表示是read & write 读写权限 
admin = rw

 编辑passwd文件

vim passwd

追加admin用户和密码

# 在[users]下面追加上面设置的用户和密码 
admin = 123456

编辑svnserve.conf文件

下面描述的内容在文件中都有注释声明,可以直接接触注释,或者备份注释单独写一份

anon-access = none:表示禁止匿名用户访问。

auth-access = write:表示授权用户拥有读写权限。

password-db = passswd:指定用户名口令文件,即 passwd 文件。

authz-db = authz:指定权限配置文件,即 authz 文件。

realm = /var/svn-repo:指定认证域,即 /var/svn-repo 目录。

设置防火墙关闭,或者开放3690端口,这一步不赘述了

启动SVN服务

svnserve -d -r /var/svn-repo

检查SVN服务器是否存在:

ps -ef | grep 'svnserve'

在服务器中检查仓库URL连接:

svn co svn://localhost:3690/first-repo

访问会要求输入Linux系统账号和我们刚刚设置的SVN账号:

【root我好像输错了,但是没事,输入要求给出账号名称,再输入对应的密码就行了】

Authentication realm: <svn://localhost:3690> /var/svn-repo
Password for 'root': 
Authentication realm: <svn://localhost:3690> /var/svn-repo
Username: admin
Password for 'admin': 

第一次访问成功会有警告提示:

然后就是是否不加密保存密码

-----------------------------------------------------------------------
ATTENTION!  Your password for authentication realm:

   <svn://localhost:3690> /var/svn-repo

can only be stored to disk unencrypted!  You are advised to configure
your system so that Subversion can store passwords encrypted, if
possible.  See the documentation for details.

You can avoid future appearances of this warning by setting the value
of the 'store-plaintext-passwords' option to either 'yes' or 'no' in
'/root/.subversion/servers'.
-----------------------------------------------------------------------
Store password unencrypted (yes/no)? yes
Checked out revision 0.

因为没有任何文件,只是初始化,所以SVN提示CheckOut检查到的版本为0

二、Windows下的SVN客户端搭建

SVN客户端TortoiseSVN下载:

https://tortoisesvn.net/downloads.html

安装基本无脑下一步,但是注意一下勾选命令行支持

另外,如果要换安装路径,可以自行点击浏览路径进行更换【新版本貌似不允许更换】

安装成功之后,右键就会提供SVN客户端的一些操作选项:

 

 

posted @ 2020-09-21 00:36  emdzz  阅读(209)  评论(0)    收藏  举报