我想在我的 Ubuntu 机器上安装 Subversion 服务器。
我需要哪些软件包?如何创建存储库并设置新用户?
答案1
svn 有很多种配置,这里有一些简短的说明,用于通过 http 获取基本的 svn 存储库。
- 安装所需的软件包:
apt-get install subversion apache2 libapache2-svn
- 创建目录结构:
mkdir -p /var/svn/repos/
- 创建存储库:
cd /var/svn/repos/
svnadmin create --fs-type fsfs <your-repository>
- 现在创建您的项目结构以导入到存储库中:
mkdir -p /tmp/myproject/trunk /tmp/myproject/tags /tmp/myproject/branches
- 将项目导入到存储库:
svn import /tmp/myproject file:///var/svn/repos/<your-repository> -m "initial import"
- 使其可以通过 http 访问:
cd /etc/apache2/sites-available
touch subversion.conf
vim subversion.conf
现在使用此配置编辑空文件:
NameVirtualHost *:80
<VirtualHost *:80>
<Location /svn>
ErrorDocument 404 default
DAV svn
SVNParentPath /var/svn/repos
SVNListParentPath off
Require valid-user
AuthType Basic
AuthName "subversion access"
AuthUserFile /var/svn/.htpasswd
AuthzSVNAccessFile /var/svn/authz
</Location>
</VirtualHost>
- 为 apache 启用 dav_svn 模块:
a2enmod dav_svn
- 为 apache 启用 authz_svn 模块:
a2enmod authz_svn
- 启用 VHost 配置:
a2ensite subversion.conf
- 现在重新启动网络服务器:
/etc/init.d/apache2 restart
- 创建一个 htpasswd:
htpasswd -c /var/svn/.htpasswd user
- 为存储库创建访问控制文件:
touch /var/svn/authz
- 编辑空的 authz 文件:
vim /var/svn/authz
- 授予用户读/写权限:
[你的存储库:/]
用户 = rw
让我们尝试通过 http 检出 repo:svn checkout http://your-server/svn/your-repository
答案2
开始阅读手册。我现在也在做同样的事情。
使用 设置存储库后svnadmin create /path/to/repo
,您可以使用svnserve --root /path/to/repo
使存储库在 上可用svn://yourhost/
。如有必要,请打开 TCP 端口 3690。
可以通过 HTTP 使用 SVN,但我还没有读过那部分 :o
答案3
您将需要该subversion
包裹。
sudo apt-get update
sudo apt-get install subversion
该软件包包含客户端,创建 Subversion 存储库的工具和服务器。
答案4
这是来自 WANdisco 的一篇博客文章关于如何安装 Tortoise SVN 1.7 并进行第一次存储库更改。