最近在和小伙伴组队参加一个关于人工智能的比赛,无奈不知道怎么处理好每一个人的代码托管问题,因而找到了晚上免费svn托管服务器的服务,可是所给的免费空间实在过小了。原本咱们在学校的实验室搭建了一个本地的服务器,可是只能是内网登录,考虑到一个小伙伴会在78月左右就出国留学,不是内网没法登录,并且那台主机将用来搭建集群。此时想到了我以前申请的腾讯云服务器,遂在腾讯云上基于centos7搭建了SVN。具体过程以下,若有不对,请你们指正!本人在CSDN上有博客http://blog.csdn.net/weixin_36394852,同步发布~html
yum install subversion
linux
安装完以后,能够输入:centos
svnserve -version
服务器
查看目前svn版本,查询到即为进入第二步svn
mkdir -p var/svn/fuck
人工智能
-p参数:加了系统将自动创建好那些尚不存在的目录,即一次能够创建多个目录
centos7
svnadmin create /var/svn/fuck
.net
执行命令后,svn会在/var/svn/fuck生成以下文件:
3d
其中conf文件夹下有重要的文件为如下几个:版本控制
svnserve.conf //svn服务配置文件 authz //权限控制配置文件 passwd //用户名口令文件
在[general]里面把如下配置前的#号删去并根据须要做出如下修改:
vi /var/svn/fuck/conf/senserve.conf
[general] //匿名访问的权限,能够是read、write、none,默认为read,在此由于我要创建我团队的私人版本库,故我设置为none anon-access=none //使受权用户有写权限,参数也是如上3个 auth-access=write //使用哪一个文件做为帐号文件,在此指定在conf文件里面的另一个文件passwd password-db=passwd //使用哪一个文件做为权限文件,在此指定在conf文件里面的另一个文件authz authz-db=authz //认证命名空间,说白了就是版本库的所在目录 realm=/var/svn/fuck
具体操做以下:
修改完以后按Esc键后,按Shift 连续按Z键进行保存(对liunx新手来讲提醒一下)。
vi /var/svn/fuck/conf/authz
在[groups]中添加:
[groups] //用户组 Fuck = kwongtai,dada //用户组所对应的用户 //由于只有一个版本库,故使用[/] [/] //库目录权限 @admin = rw //用户组权限 * = //非用户组权限,这里设置除了用户组都对版本库没有任何权限
vi /var/svn/fuck/conf/passwd
svnserve -d -r /var/svn/fuck
使用ps aux | grep svn
查看是否已经启动了svn
见到如红色圈记那样,就表明已经启动成功.
输入指令killall svncerve
再输入ps aux | grep svn
杀死进程,能够发现svnserve全部的进程已经被杀死了
下载地址以下:https://tortoisesvn.net/downloads.zh.html
找到要创建仓库的文件夹下,右键点击check out
这里因为我只设置了一个库,直接能够输入个人外网IP就能够了
这里的帐号密码为/var/svn/fuck/conf/passwd里面设置的那些
就能看到那个文件夹了:
在这个文件夹下。新建fuck.txt文件,随便编辑文件以后,能够看见文件夹的标志变了
在该文件夹,右键点击svn commit,弹出commit对话框,能够在在此输入每一个版本的日志
在此文件夹下,右键点击TortoiseSVN选择show log能够显示文件的日志记录
最后配置在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稳定并且作到了真正的私密,这对开发来讲着实是太好了。第一次写博文,写得很差请你们指正!