今天上午做组内同事合并代码的时候,发生一个意外,一个同事不小心将三四天工作产生代码都删除了,因为昨天下班前我们调试过此代码,asp.net程序,最后折腾了三个多小时代码总算抢救回来了,但是还是暴露了很多风险,看来我要转变下配置管理的思路了。
先介绍下产品组具体具体人员环境:我产品经理,下面带三个开发人员,测试人员调用公司统一的资源,依据具体项目阶段分配两到三人,美工人员一人事业部合用,我这边可以分配任务。我负责产品需求、项目管理以及开发框架;实施有专门的实施经理在客户现场,由于现在产品处于研发阶段,还没有大规模上线,一般在北京本地客户我直接去现场。公司内部版本服务端为SVN,客户端为TortoiseSVN。代码丢失的这位同事因刚来我们组不久,虽然开发已经工作两周多了,但是SCM管理员昨天下午给给分配本产品组访问读写权限,所以其代码一直保存在其本机,功能和业务我都审核过了,准备上午做合并工作。这时意外来临了。
发生这样的事情大家谁都不愿意,这个应该我制度上的不完善,如果我每天定义了迁出的代码必须提交就没有这样的问题。
由于vs2005不直接支持SVN,现找了一开源软件AnkhSVN来支持其工作。
首先下载AnkhSVN:
http://AnkhSVN.tigris.org/servlets/ProjectDocumentList?folderID=7315
看英文不爽的话可以下一个汉化包
http://www.onlinedown.net/soft/61020.htm
双击安装文件就可以安装了,汉化包直接覆盖在安装目录下就行
检出版本库
在初次使用时,一般都需要用SVN从版本库中检出(Checkout)现有的代码
在VS2005中,工具->AnkhSVN->检出版本库/checkout repository directory,如图所示

出现检出版本库的对话框

URL中填写要检出的SVN路径,如svn://10.10.151.233/yl
本地目录填写要放代码的位置,单击检出,这样就把代码从服务器取出到本机了。
使用AnkhSvn
在vs2005中打开检出的项目,第一次打开时会询问是否要启用Ankh,选择是

在解决方案管理器里可以看到AnkhSvn已经开启了(有小勾之类的标记)

在本地修改了文件后,图标会有所改变

在修改完成后,要提交到版本库中,方法如下:
在修改过的文件,或者它的上层目录中右键->提交/Commit

在弹出的对话框中,选中要提交的更改,并写明注释

单击提交就可以把新版本提交到版本库了
对应修改不当的,可以使用

来撤消。