• 151-1268-4099
  • Lin_X1999@outlook.com
  • Shenzhen Nanshan, Guangdong
Linux
SVN服务器搭建,文件上传下载

SVN服务器搭建,文件上传下载

  • SVN是什么:
    • SVN的全称是Subversion,版本控制系统
    • 是一个开放源代码的版本控制系统,通过采用分支管理系统的高校管理,简而言之就是用于多人共同开发同一个项目,实现共享资源,实现最终集中式的管理。
    • SVN采用客户端/服务器体系,数据不丢失,历史可追溯
    • SVN是输入C/S服务类软件,有客户端和服务端,客户端用于操作,服务端用于数据保存,服务端会管理着随时间改变的所有数据,以提交版本记录每次操作内容。
    • SVN的客户端有基于WEB的webSVN和Tortoise SVN为代表的客户端软件
  • 本文详细介绍了如何在Ubuntu系统上搭建Subversion服务器,包括下载安装包、创建版本库目录、配置权限和重启服务等步骤,并提到了Windows客户端的配合使用。

第一阶段:部署服务器

1)下载subversion安装包

 sudo apt-get install subversion  

查看已安装的subversion的版本

2)创建版本库目录

  • 此仅为目录,为后面创建版本库提供存放位置
sudo mkdir svn

3)创建项目版本库

cd svn
sudo svnadmin create demo

新建版本库下有一些默认的文件或文件夹:conf \db\format\hooks\locks\README.txt

4)修改SVN配置

  • 修改svnserve.conf文件
cd conf
sudo vim svnserve.conf

原始文件内容都被注释掉的,我们只需要去掉指定内容前注释即可,如下:

[general]

anon-access = read 【控制非鉴权用户访问版本库的权限】

auth-access = write 【控制鉴权用户访问版本库的权限】

password-db = passwd 【指定用户名口令文件名,即访问时要输用户名和密码】

authz-db = authz

realm = demo 【指定版本库的认证域,即在登录时提示的认证域名称,改成自己的版本库名称】
  • 修改passwd文件,添加账号和密码
sudo vim passwd

添加账号:demo,密码: 123456

  • 修改authz文件
 sudo vim authz

在根目录下( [/] )设置用户读写权限

5)重启SVN服务

  • 更改svnserver.conf时需要重启SVN服务才生效,更改authz,passwd文件不需要重启服务。
    • 重启SVN服务命令:
svnserve -d -r /path/svn/
ps aux|grep svnserve
  • 杀死SVN进程命令
killall svnserve

第二阶段:安装客户端拉取项目

1)安装svn客户端

  • 下载两个包后,先运行安装包,安装完成后,再运行语言包,安装过程忽略…有手就行。

2)拉取项目SVN项目

  • 创建SVN目录
  • 新建对应项目目录名称,进入目录,然后右击左键
  • 版本库URL:svn://服务器IP/项目名称
  • 然后,点击确定
  • 输入账号密码:demo/123456

3)上传文件

  • 新建一个test文件
  • 右击选择,SVN提交
  • 输入commit内容,选中要提交的文件,点击确认

4)下载文件

  • 把刚才文件的test文件删除
  • 右击选择,SVN更新,点确认

至此,从SVN服务器搭建到文件上传/下拉已完成!如果部署遇到什么问题可以联系帅哥博主帮你解决,Contact – STARBUCKET

补充:docker 部署 apache2 + svn,通过http协议访问SVN,可直接使用我打包好的镜像

docker pull registry.cn-shenzhen.aliyuncs.com/starbucket/svn-server:1.14.3
docker-compose up -d
  • docker-compose 文件目录结构
  • 访问路径:ip+/svn,这是svn的根路径,项目目录需要进入容器手动创建
  • 创建项目库
docker exec -it svn /bin/bash

svnadmin create code

ls -l
  • 再次网页访问,ip+/svn/+项目库名称
  • 默认账号密码:admin/1
  • 显示如下,表示正常访问项目库
  • SVN客户端通过HTTP访问代码库
  • SVN账号权限管理,可自行配置,给孩儿们一个模板!
# SVN代理配置
<Location /svn>
   DAV svn
   SVNParentPath /opt/svn/
   SVNListParentPath On

   AuthType Basic
   AuthName "Subversion Repository"
   AuthUserFile       /opt/svn/passwd
   AuthzSVNAccessFile /opt/svn/authz
   Require valid-user
</Location>

# 账号配置,密码都是: 1
admin:$apr1$ZjELDugg$gL5ng6QHnmMipgVp8CDbT0
master:$apr1$ZjELDugg$gL5ng6QHnmMipgVp8CDbT0
dev:$apr1$ZjELDugg$gL5ng6QHnmMipgVp8CDbT0

# 账号权限配置
[groups]
managers = admin
users = dev, master

[/]
@managers = rw
* = r

[code:/]
@managers = rw
master = rw
dev= r

Tags :

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注