前言:
- 工作了这些年,工作了三家公司,也用过主流的代码管理平台,比如SVN,git系列(gitlib,gitee),各有优点,我个人比较喜欢SVN,多人协作的代码管理难免会有代码冲突,SVN如果有冲突是具体行的冲突,如果同一个文件,不同行是可以合并的,git如果一个文件冲突,不管你改的是哪行,都会冲突,有一个优点,用svn版本号作为版本号加入到软件,更方便代码和svn版本关联,git版本号是很长的随机数码,不适合作为版本号。
- 现在的公司没有代码管理,代码容易丢失,也无法追溯代码调整的过程。我就以SVN为工具,为公司搭建代码管理平台,也可以保存一些项目资料和发布资料。
前置说明
硬件:内网服务器,联想台式服务器,带自动备份的。
系统:Windows Server2012 主要我熟悉。
软件:SVN服务器端,可以直接去SVN官网下载,免费的。VisualSVN-Server-5.1.4-x64.msi我用的是这个版本
原理:
- 在服务器上安装SVN服务器端软件,然后打开软件,创建仓库,创建用户,配置权限,然后分发url,让有相关目录权限的用户安装SVN客户端软件,去checkout相关目录即可。
详细步骤:
-
准备内网服务器,并且联入局域网。
-
安装SVN服务器端软件,window server2012和普通window桌面版本没什么差别,双击进入安装引导,然后改安装路径,然后一路next。
-
打开SVN服务器端软件,创建仓库。
-
创建项目管理员用户,并去仓库里面设置读写权限。
-
项目管理员用户去检出仓库,并提交项目目录框架,方便项目文档查看。
-
根据项目组人员进行用户添加,并在相关的目录里面设置必要的权限,不能把项目目录让任何人可以读写,有些涉密的资料,仅仅对涉密人员开放,比如软件开发,只能看软件源码目录,和相关的pdf资料,硬件开发,只能看到硬件工程和相关资料。
到此,项目svn就算设置好了。可以让相关的人员进行相关路径的检出和提交了。
这里有个问题,svn提交的时候不输入log,也可以提交,但这个不方便管理,我直接见过可以限制提交,后续再补充。