在 Ubuntu 20.04|18.04|16.04 和 Debian 10|9 上安装 SVN 服务器在 Ubuntu 20.04|18.04|16.04 和 Debian 10|9 上安装 SVN 服务器在 Ubuntu 20.04|18.04|16.04 和 Debian 10|9 上安装 SVN 服务器在 Ubuntu 20.04|18.04|16.04 和 Debian 10|9 上安装 SVN 服务器
  • 业务
  • 目标
  • 支持
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容

在 Ubuntu 20.04|18.04|16.04 和 Debian 10|9 上安装 SVN 服务器

发表 admin at 2025年2月28日
类别
  • 未分类
标签

在这篇博文中,我们将了解如何在 Ubuntu 20.04|18.04|16.04 和 Debian 10|9 上安装 SVN 服务器。 Apache Subversion (SVN) 是一种流行的开源软件版本控制和修订控制系统,根据 Apache 许可证发布。软件开发人员使用 SVN 来维护源代码、文档、网页等的历史和当前版本。

多年来,Subversion 在企业和开源领域得到了广泛采用。

步骤1:在Ubuntu/Debian上安装SVN服务器

SVN Server 需要 Apache Web 服务器,可以通过运行以下命令安装:

sudo apt update
sudo apt -y install apache2 apache2-utils

然后安装 Apache SVN:

sudo apt -y install vim tree subversion libsvn-dev libapache2-mod-svn subversion-tools

启用 SVN 所需的 Apache 模块:

sudo a2enmod dav dav_svn
sudo systemctl restart apache2

编辑 SVN apache 配置文件并进行类似于以下的更改:

sudo tee /etc/apache2/mods-enabled/dav_svn.conf<<EOF
Alias /svn /var/lib/svn
<Location /svn>

   DAV svn
   SVNParentPath /var/lib/svn

   AuthType Basic
   AuthName "Subversion Repository"
   AuthUserFile /etc/apache2/dav_svn.passwd
   Require valid-user
</Location>
EOF

检查配置语法

$ sudo apachectl -t
Syntax OK

然后重新启动 apache2 服务:

sudo systemctl restart apache2

步骤2:创建SVN用户

我们在 SVN Apache 配置文件中指定用户身份验证信息保存在 /etc/apache2/dav_svn.passwd 上。让我们创建 admin Subversion 用户。

sudo htpasswd -cm /etc/apache2/dav_svn.passwd admin

提供您的管理员用户密码:

New password: <ENTER PASSWORD>
Re-type new password:<CONFIRM PASSWORD>
Adding password for user admin

使用的选项:

-c : Create a new file.
-m Force MD5 encryption of the password (default).

添加其他用户时,不要使用-c选项,只需传递-m即可修改文件。

sudo htpasswd -m /etc/apache2/dav_svn.passwd user1
sudo htpasswd -m /etc/apache2/dav_svn.passwd user2
sudo htpasswd -m /etc/apache2/dav_svn.passwd user1

第3步:创建SVN存储库

现在您已经安装了 SVN,您需要为其创建一个新的存储库。我们将把我们的存储库放在 /var/lib/svn/ 目录中。

sudo mkdir -p /var/lib/svn/

使用命令 svnadmin Subversion 存储库管理工具创建存储库。

sudo svnadmin create /var/lib/svn/<repo-name>

例如

sudo svnadmin create /var/lib/svn/repo1

这将创建一个名为 payment-gateway 的新存储库,其树结构如下。

$ tree /var/lib/svn/repo1
/var/lib/svn/repo1
|-- README.txt
|-- conf
|   |-- authz
|   |-- hooks-env.tmpl
|   |-- passwd
|   `-- svnserve.conf
|-- db
|   |-- current
|   |-- format
|   |-- fs-type
|   |-- fsfs.conf
|   |-- min-unpacked-rev
|   |-- revprops
|   |   `-- 0
|   |       `-- 0
|   |-- revs
|   |   `-- 0
|   |       `-- 0
|   |-- transactions
|   |-- txn-current
|   |-- txn-current-lock
|   |-- txn-protorevs
|   |-- uuid
|   `-- write-lock
|-- format
|-- hooks
|   |-- post-commit.tmpl
|   |-- post-lock.tmpl
|   |-- post-revprop-change.tmpl
|   |-- post-unlock.tmpl
|   |-- pre-commit.tmpl
|   |-- pre-lock.tmpl
|   |-- pre-revprop-change.tmpl
|   |-- pre-unlock.tmpl
|   `-- start-commit.tmpl
`-- locks
    |-- db-logs.lock
    `-- db.lock

10 directories, 28 files

将目录 /var/lib/svn 的所有者设置为 www-data 用户和组。

sudo  chown -R www-data:www-data  /var/lib/svn
sudo chmod -R 775 /var/lib/svn

最后访问SVN Web界面:

http://server_ip_or_hostname/svn/<reponame>

# For me this will be http://server_ip_or_hostname/svn/repo1

使用创建的用户名和密码登录。

您已完成在 Ubuntu 18.04/Debian 9 上安装 SVN 服务器的步骤。查看 Apache Subversion 文档以了解有关如何使用 SVN 的更多信息。

如果您需要基于 Git 的产品,请检查:

如何在Ubuntu上安装Gogs Git服务

在 CentOS/Fedora 上安装 Gitlab CE

©2015-2025 Norria support@norria.com