出处:http://blog.csdn.net/weixin_36394852/article/details/72314070
最近在和小伙伴组队参加一个关于人工智能的比赛,无奈不知道怎么处理好每个人的代码托管问题,于是找到了晚上免费svn托管服务器的服务,但是所给的免费空间实在太小了。本来我们在学校的实验室搭建了一个本地的服务器,但是只能是内网登陆,考虑到一个小伙伴会在78月左右就出国留学,不是内网无法登陆,而且那台主机将用来搭建集群。此时想到了我之前申请的腾讯云服务器,遂在腾讯云上基于centos7搭建了SVN。另外我在cnblog的博客为:http://www.cnblogs.com/kwongtai/ ,两边同步更新~具体过程如下,如有不对,请大家指正!
1. 第一步安装svn服务器端软件,使用的命令有
yum install subversion
安装完之后,可以输入:
svnserve -version
查看目前svn版本,查询到即为进入第二步
2. 创建svn版本库的目录
mkdir -p var/svn/fuck
-p参数:加了系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录
3. 创建版本库
svnadmin create /var/svn/fuck
执行命令后,svn会在/var/svn/fuck生成如下文件:
其中conf文件夹下有重要的文件为以下几个:
- 1
- 2
- 3
4. 配置svnserve.conf文件
在[general]里面把以下配置前的#号删去并根据需要作出以下修改:
vi /var/svn/fuck/conf/senserve.conf
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
具体操作如下:
修改完之后按Esc键后,按Shift 连续按Z键进行保存(对liunx新手来说提醒一下)。
5. 修改权限控制配置文件antuz:
vi /var/svn/fuck/conf/authz
在[groups]中添加:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
6. 修改用户名口令文件配置passwd
vi /var/svn/fuck/conf/passwd
7. 启动svn版本库
svnserve -d -r /var/svn/fuck
使用ps aux | grep svn
查看是否已经启动了svn
见到如红色圈记那样,就代表已经启动成功.
8. 停止svn
输入指令killall svncerve
再输入ps aux | grep svn
杀死进程,可以发现svnserve所有的进程已经被杀死了
9. Win10下客户端访问,需要安装TortoiseSVN
下载地址如下:https://tortoisesvn.net/downloads.zh.html
10. 建立仓库
找到要建立仓库的文件夹下,右键点击check out
11. 放上你的svn地址:
这里由于我只设置了一个库,直接可以输入我的外网IP就可以了
12. 确认后提示输入用户密码:
这里的账号密码为/var/svn/fuck/conf/passwd里面设置的那些
13. 登陆之后
就能看到那个文件夹了:
在这个文件夹下。新建fuck.txt文件,随便编辑文件之后,可以看见文件夹的标志变了
在该文件夹,右键点击svn commit,弹出commit对话框,可以在在此输入每个版本的日志
在此文件夹下,右键点击TortoiseSVN选择show log可以显示文件的日志记录
14. 配置在Linux上配置开机自动启动svn
最后配置在Linux上配置开机自动启动svn,免去了重启Linux后要自己启动的svn的麻烦
输入:
vi /etc/rc.d/rc.local
添加内容:
svnserve -d -r /var/svn/fuck
因为centos7之后,原来直接修改
/etc/rc.d/rc.local
启动脚本自动生效的功能因为修改了需要重新赋予可执行权限
再输入 chmod +x /etc/rc.d/rc.local
结言
自己搭建的SVN稳定而且做到了真正的私密,这对开发来说着实是太好了。第一次写博文,写得不好请大家指正!