| 2022-10-26
svn服务器是什么?该怎么设置?svn(subversion)是近年来崛起的版本管理工具,是cvs的接班人。目前,绝大多数开源软件都使用svn作为代码版本管理软件。
集中式管理的工作流程:
集中式代码管理的核心是服务器,所有开发者在开始新一天的工作之前必须从服务器获取代码,然后开发,最后解决冲突,提交。所有的版本信息都放在服务器上。如果脱离了服务器,开发者基本上可以说是无法工作的。下面举例说明:
开始新一天的工作:
1、从服务器下载项目组最新代码。
2、进入自己的分支,进行工作,每隔一个小时向服务器自己的分支提交一次代码(很多人都有这个习惯。因为有时候自己对代码改来改去,最后又想还原到前一个小时的版本,或者看看前一个小时自己修改了哪些代码,就需要这样做了)。
3、下班时间快到了,把自己的分支合并到服务器主分支上,一天的工作完成,并反映给服务器。
这就是经典的svn工作流程,从流程上看,有不少缺点,但也有优点。
缺点
1、服务器压力太大,数据库容量暴增。
2、如果不能连接到服务器上,基本上不可以工作,看上面第二步,如果服务器不能连接上,就不能提交,还原,对比等等。
3、不适合开源开发(开发人数非常非常多,但是Google app engine就是用svn的)。但是一般集中式管理的有非常明确的权限管理机制(例如分支访问限制),可以实现分层管理,从而很好的解决开发人数众多的问题。
优点
1、管理方便,逻辑明确,符合一般人思维习惯。
2、易于管理,集中式服务器更能保证安全性。
3、代码一致性非常高。
4、适合开发人数不多的项目开发。
5、大部分软件配置管理的大学教材都是使用svn和vss。
下载SVN服务端。
下载客户端和对应的语言包。
下载花生壳实现内网穿透(如果不需要外网访问的话,其实局域网就够用了)。
前三点为安装过程有所选择的界面:
选第一个单选按钮(安装svn服务器和管理控制台)第三个打钩(将svn命令加入环境变量)。
选第一个(选择安装svn普通版)。
第一个路径是svn安装路径,第二个是svn源码库路径,第三个是给svn传输数据的端口,默认为443端口。
安装完成后在Users中创建对应的用户名。
在Groups中创建对应的组,并给其分配用户名。
在Repositories中创建,输入文件夹名,下一步→默认第一个,下一步→点击Custom→点击Add给其分配组或者用户名→确定,确定,Create创建。
双击安装语言包和svn客户端
文件夹内任意位置右键→setting→把language语言那栏改为中文。
至此,SVN服务器就成功配置完成并启动了。此时,SVN客户端可以使用设置好的账号来登录SVN服务器了。
使用花生壳内网穿透功能可以实现外网访问svn服务器。服务器处于公司内网中,无公网IP,也无路由器管理权限,花生壳正好能解决这些问题。无需再次copy又发布,省时又省力。花生壳可以使设备在内网或者没有固定/公网IP,也能轻松通过公网访问。