前言
由于文档资料越来越多,将所有资料都存放在自己的电脑上容易混淆,并且也不利于分享。这种情况下,考虑将资料上传SVN统一管理,这样一来其他人也能很方便的查略各种资料。
当SVN安装在局域网内的话,想要远程访问资料库或者代码将会受到限制,为了能从公共网络访问内网SVN资料库,cpolar能很好的解决这一需求,cpolar是一个能把内网服务暴露至公网进行访问的工具。
SVN分为服务端和客户端,服务端主要是做数据资料存储,客户端主要是图形化工具连接服务端获取服务端数据资料,下面介绍在ubuntu系统安装服务端,在通过客户端远程访问。
1. Ubuntu安装SVN服务
命令行输入安装命令:
sudo apt install subversion
查看svn
版本,出现版本信息表示安装成功:
svnserve --version
创建版本库,执行如下系列命令
cd /opt sudo mkdir svn cd svn sudo mkdir repository
创建好后输入以下命令创建仓库
sudo svnadmin create /opt/svn/repository
创建成功后我们repository
目录下会发现一系列文件,其中:
conf
文件夹下是存放的配置文件,包括SVN
用户名的权限、密码这些;
db
里面的包含我们上传到SVN服务器上面的文档、代码等数据的不同版本。
这里需要注意的是要对db文件夹释放权限,否则客户端可能无法连接SVN服务器。
输入以下命令,对db
文件夹释放权限,释放成功后db
文件夹会变成绿色
sudo chmod -R 777 db
2. 修改配置文件
首先修改repository
文件下的conf
这个文件夹里面的文件
2.1 修改svnserve.conf文件
这个文件里面主要设置我们的SVN
访问方式.输入编辑命令:
sudo vim svnserve.conf
按i
键进入编辑
解开四个参数的#号注释
然后按Esc键
退出编辑,输入:wq
保存退出
2.2 修改passwd文件
这个文件主要是添加用户名和密码,输入命令进入编辑:
sudo vim passwd
按i
进行编辑
添加以下信息,账号密码可自行定义!
添加完成Esc
键退出,输入:wq
保存退出.
2.3 修改authz文件
这个文件主要是对登录用户的权限管理,输入以下命令进入编辑:
sudo vim authz
按i
进行编辑
添加如下信息
然后Esc键
退出编辑,输入:wq
保存退出
3. 启动svn服务
输入以下命令启动svn
sudo svnserve -d -r /opt/svn/
4. 内网穿透
上面我们在本地Ubuntu
虚拟机安装了svn服务端,但目前只能在局域网络下访问,如离开了局域网将无法连接svn
。不过我们可以通过cpolar
来实现公网访问,突破局域网的限制,不需要公网IP
,不需要设置路由器。
cpolar官网:
https://www.cpolar.com/
4.1 安装cpolar内网穿透
支持一键脚本安装命令
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
- token认证
登录cpolar官网后台,点击左侧的验证,查看自己的认证token,之后将token贴在命令行里:
cpolar authtoken xxxxxxx
- 向系统添加服务
sudo systemctl enable cpolar • 1
- 启动cpolar服务
sudo systemctl start cpolar
4.2 创建隧道映射本地端口
成功启动cpolar
服务后,我们在浏览器上访问本地9200端口【http://127.0.0.1:9200 】,登录cpolar
web UI
管理界面。
登录成功后,点击左侧仪表盘的隧道管理——创建隧道,创建一个tcp
协议的隧道指向本地3690端口:
隧道名称:可自定义,注意不要与已有的隧道名称重复
协议:tcp
本地地址:3690
域名类型:免费选择随机域名
地区:选择China VIP
点击创建
隧道创建成功后,点击左侧的状态——在线隧道列表,可以看到,刚刚创建的隧道已经有生成了相应的公网地址,将其复制下来