在ubuntu系统上搭建svn服务器的做法
作者:朱金灿
来源:clever101的专栏
1.使用包管理器安装Subversion及相关工具:
具体是执行命令:
sudo apt update
sudo apt install subversion -y
查看svn安装是否成功:
# 查看svn的版本号
svn --version
2.创建SVN仓库
选择一个目录作为仓库根路径(例如/opt/svn):
# 新建svn仓库目录
sudo mkdir -p /opt/svn
# 创建一个名为image_pipeline的仓库
sudo svnadmin create /opt/svn/image_pipeline
# 设置权限(根据实际用户调整,如apache用户)
sudo chown -R www-data:www-data /opt/svn/image_pipeline
3.配置仓库权限
编辑仓库的配置文件,具体是修改认证配置文件:
sudo vi /opt/svn/my_repo/conf/svnserve.conf
取消注释或修改以下行:
anon-access = none # 禁止匿名访问
auth-access = write # 认证用户可写
password-db = passwd # 使用passwd文件存储用户密码
设置用户密码
编辑passwd文件:
sudo vi /opt/svn/my_repo/conf/passwd
添加用户(格式:用户名 = 密码):
[users]
zjc = password123
4.启动SVN服务
通过systemd管理
创建服务文件:
sudo vi /etc/systemd/system/svnserve.service
在服务文件填写如下内容:
[Unit]
Description=Subversion Server
After=network.target[Service]
Type=forking
ExecStart=/usr/bin/svnserve -d -r /opt/svn
ExecStop=/bin/kill -s TERM $MAINPID[Install]
WantedBy=multi-user.target
启动并启用服务:
sudo systemctl daemon-reload
sudo systemctl start svnserve
sudo systemctl enable svnserve
5. 防火墙配置
如果启用了防火墙,开放3690端口:
sudo ufw allow 3690/tcp
sudo ufw reload
5. 客户端访问svn服务器
命令行方式访问
具体是执行命令:
# 192.168.21.60:3690为svn服务器IP和端口,zjc为用户名
svn checkout svn://192.168.21.60:3690/image_pipeline --username zjc
效果图如下:
图形界面方式访问
使用TortoiseSVN软件,如下图: