搭建和使用SVN-阿里云ECS
Subversion(SVN) 是一个开源的版本控制系統, 也就是说 Subversion 管理着随时间改变的数据。
这些数据放置在一个中央资料档案库(repository) 中。这个档案库很像一个普通的文件服务器, 不过它会记住每一次文件的变动。这样您就可以把档案恢复到旧的版本, 或是浏览文件的变动历史。
日常开发过程其实就是这样的(假设您已经Checkout并且已经工作了几天):Update(获得最新的代码)—> 作出自己的修改并调试成功 —> Commit(大家就可以看到您的修改了)。
如果您与同事同时修改了同一个文件,SVN可以合并你们的改动,实际上SVN管理源代码是以行为单位的,就是说你们只要不是修改了同一行程序,SVN都会自动合并两种修改。如果是同一行,SVN会提示文件Confict(冲突),需要手动确认。
您可以采用以下任一种方法安装SVN。
使用SVN版本控制镜像您可以在云市场购买使用 SVN版本控制镜像 的ECS实例。
创建了实例后,按以下步骤操作:
本文以CentOS 7.2 64位系统为例,说明如何在CentOS 7.2上安装SVN。
yum install subversion
svnserve --version
mkdir /var/svn
cd /var/svn svnadmin create /var/svn/svnrepos
cd svnrepos ls
Subversion目录说明:
cd conf/
进入conf目录(该SVN版本库配置文件)。返回结果如下:
vi passwd
。
i
键进入编辑模式。
[users]
块中添加用户账号和密码,格式:账号=密码,比如示例中的suzhan = redhat(注意等号两端要有一个空格)。
Esc
键退出编辑模式,并输入 :wq
保存并退出。vi authz
。
i
键进入编辑模式。
[/] suzhan=rw
Esc
键退出编辑模式,并输入 :wq
保存并退出。vi svnserve.conf
。
i
键进入编辑模式。
anon-access = read #匿名用户可读,您也可以设置 anon-access = none,不允许匿名用户访问。设置为 none,可以使日志日期正常显示 auth-access = write #授权用户可写 password-db = passwd #使用哪个文件作为账号文件 authz-db = authz #使用哪个文件作为权限文件 realm = /var/svn/svnrepos #认证空间名,版本库所在目录
Esc
键退出编辑模式,并输入 :wq
保存并退出。svnserve -d -r /var/svn/svnrepos
ps -ef |grep svn
查看SVN服务是否开启。
如果返回结果如下图所示,表示SVN服务已经开启。
killall svnserve
SVN服务的默认端口为TCP 3690。您需要登录 ECS管理控制台,添加安全组规则 放行TCP 3690端口。
这部分说明如何从本地(Windows操作系统)访问ECS实例上安装的SVN服务。
svn://实例公网IP地址/资源库名
;指定 检出至目录(如本示例中的C:\KDR);再单击 确定。如果出现以图所示信息,表示检出成功。
将项目下载到本地机器后,您可以在添加文件、修改文件、删除文件等。
提交修改按以下步骤提交修改:
如果别人修改了SVN服务端资源库上的项目,您想下载最新的项目,则在本机项目文件空白处单击右键,选择 SVN更新,即可自动完成下载,并会提示所作的更新有哪些。
如果您遇到问题,请随时联系米姆,我们将免费为您提供阿里云基础服务。