1先sudo apt update 执行更新repo源2sudo apt install -y subversion 使用apt安装 Subversion3安装完成后执行svnserve --version查看安装的版本4创建svn仓库目录自己定义创建svn仓库svnadmin create /process/svn/repositories/test_1_svn这个可自定义5把这个目录下的file权限给到svn:svn 如果没svn user可以新建我这是部署测试实际操作svn要给一个权限较高的user防止被别人误操作。groupadd svn useradd -g svn -m -s /bin/bash svn解释参数含义groupadd svn创建svn用户组useradd -g svn创建svn用户并加入svn组-m同时创建用户的家目录/home/svn-s /bin/bash指定用户的登录 Shell 为 bash创建完svn user后递归给权限chown -R svn:svn process/svn/repositories/test_1_svnchmod -R 770 process/svn/repositories/test_1_svn6:下面开始配置svn仓库的权限配置文件在 process/svn/repositories/test_1_svn/confconf目录SVN版本库的配置文件版本库的访问账户、权限等db目录存放所有版本控制的数据存放文件。format文件一个文本文件文件中只包含一个整数表示当前文件库配置的版本号。hooks目录放置hook脚本文件的目录。locks目录用来追踪存取文件库的客户端。authz:模板里定义「用户 / 用户组」对仓库不同目录的读写权限精准控制谁能看、谁能改passwd:存储所有 SVN 登录用户名 明文密码老版本 svnserve 为明文svnserve.conf:(SVN 服务主配置文件核心开关authz和passwd可以参考配置权限的大小取决authz里怎么写的rw读写权限。r只读权限。*表示所有其他用户anon-access noneauth-access writepassword-db passwdauthz-db authzrealm /process/svn/repositories/test_1_svn7配置完权限可以启动服务了svnserve -d -r /process/svn/repositories/-ddaemon 后台守护进程模式开机 / 执行后后台常驻不占用当前终端-r指定 SVN 仓库根目录客户端访问时不用写完整长路径直接svn://服务器IP/test_1_svn就能访问仓库ps -ef | grep svnserve现在发现修改完配置文件zuthz和passwd后服务应该是实时更新的自动读取配置文件8配置svn开机自启动编辑/etc/rc.d/rc.localecho svnserve -d -r /process/svn/repositories /etc/rc.d/rc.localchmod x /etc/rc.d/rc.local9配置防火墙ufw allow 3690/tcpufw reload这样就可以从Local和远程ip测试svn是否正常了svn list svn ://localsvn list svn ://ip/目录