华搜传媒,专注网络推广、网络广告等互联网营销服务,QQ:755436989, 电话:13067953746 (同微信)
第一部分 TotoiseSVN介绍
TortoiseSVN 是 Subversion(简称:SVN) 版本控制系统的一个免费开源客户端,可以超越时间的管理文件和目录。文件保存在中央版本库,除了能记住文件和目录的每次修改以外,版本库非常像普通的文件服务器。你可以将文件恢复到过去的版本,并且可以通过检查历史知道数据做了哪些修改,谁做的修改。这就是为什么许多人将Subversion 和版本控制系统看作一种“时间机器”。
第二部分 TotoiseSVN下载
下载地址:https://tortoisesvn.net/downloads.html
推荐从官网下载,软件分为32位和64位版本,下载时请根据自己的系统位数进行下载;
图2.1
也可以在下载页面选择合适的语言版本下载。
第三部分 TotoiseSVN安装
安装过程:
1、下载软件后,双击程序进行安装,点击“Next”;
2、在许可证协议页面,选择“I Accept the terms in the LicenseAgreement”,点击“Next”;
图3.1
3、在自定义选项页面,可以选择安装目录,也可以直接点击“Next”进行安装;
4、点击“Install”开始安装;
图3.2
5、安装完成后,点击“Finsh”;
第四部分 签入源代码到SVN服务器
假如我们使用VisualStudio在文件夹StartKit中创建了一个项目,我们要把这个项目的源代码签入到SVNServer上的代码库中里,首先右键点击StartKit文件夹,这时候的右键菜单如下图所示:
图4.1
点击Import,弹出下面的窗体,其中//192.168.1.249是服务器名,svn是代码仓库的根目录,StartKit是我们在上个教程中添加的一个代码库:
说明:左下角的CheckBox,在第一次签入源代码时没有用,但是,在以后你提交代码的时候是非常有用的。
图4.2
点击OK按钮,会弹出下面的窗体,要求输入凭据:
图4.3
在上面的窗体中输入用户名和密码,点击OK按钮:
图4.4
如上图所示,好了,源代码已经成功签入SVN服务器了。这时候团队成员就可以迁出SVN服务器上的源代码到自己的机器了。
第五部分 签出源代码到本机
在本机创建文件夹StartKit,右键点击Checkout,弹出如下图的窗体:
图5.1
在图5.1中URLof Repository:下的文本框中输入svn server中的代码库的地址,其他默认,点击OK按钮,就开始签出源代码了。
说明:图5.1中的CheckoutDepth,有4个选项,分别是迁出全部、只签出下一级子目录和文件、只签出文件、只签出空项目,默认的是第一项。上面的例子中,我们也可以使用web的方式访问代码库,在浏览器中输入//zt.net.henu.edu.cn/svn/StartKit/
这时候也会弹出对话框,要求输入用户名和密码,通过验证后即可浏览代码库中的内容。
搞定!源代码已经成功签出到刚才新建的StartKit目录中。打开StartKit目录,可以看到如下图的文件夹结构:
图5.2
一旦你对文件或文件夹做了任何修改,那么文件或文件夹的显示图片机会发生变化。下图中我修改了其中的二个文件:
图5.3
大家看一下不同状态所对应的图片:
我们已经知道怎么将源代码签入到SVN服务器,怎么从服务器签出代码到本机,也简单了解了不同状态所对应的图案啦。
第六部分 提交修改过的文件到SVN服务器
上面的图5.3中,我修改了位于Model文件中的二个文件ImageInfo.cs和NewsInfo.cs,下面演示如何提交到SVN服务器。注意:提交源代码到服务器时,一定确保本机的代码是最新版本,否则可能提交失败,或者造成版本冲突。在Model文件夹上点击右键或在Model文件下的空白处点击右键,点击SVNCommit…弹出下面的窗体:
图6.1
点击OK按钮后,弹出如下图的窗体:
图6.2
第七部分 添加新文件到SVN服务器
我们在Model文件下添加一个新的类文件UserInfo.cs,在Model文件下的空白处点击右键,点击SVNCommit…,和上面讲的提交修改过的文件到SVN服务器一样,就可以了。另外也可以在文件UserInfo.cs上点击右键,点击TortoiseSVN=>>Add,弹出如下图的窗体:
图7.1
选中UserInfo.cs文件,点击OK按钮,这样并没有将这个文件提交到SVN服务器,只是将这个文件标记为源代码库库中的文件,并将其状态置为修改状态。之后,我们要再SVN Commit这个文件一次,才可以将其真正提交到SVN服务器上的代码库中。上面讲是添加文件,实际上,添加文件夹的步骤也是一样的,这里就不说了。
第八部分 其他操作
1、更新本机代码与SVN服务器上最新的版本一致
这个也很简单,只要在需要更新的文件夹上点击右键或在该文件下的空白处点击右键,点击SVNUpdate,就可以了。
注意:更新操作可能会因为版本冲突而失败,这是可以使用合并【Merge】或其他方法解决;也可能因为锁定【GetLock】而失败,这是需要先解锁【Release Lock】。
2、重命名文件或文件夹,并将修改提交到SVN服务器
只要在需要重命名的文件或文件夹上点击右键,点击TortiseSVN=>>Rename…,在弹出的窗体中输入新名称,点击OK按钮,就可以了。此方法也不是直接重命名,而是将该文件或文件夹的名称标记为重命名后名称,也需要我们使用SVN Commit提交到SVN服务器后才真正重命名。
3、删除文件或文件夹,并将修改提交到SVN服务器
最简单就是,你直接删除文件或文件夹,然后使用SVN Commit提交更新到SVN服务器。另外一种方法是在你要删除的文件或文件夹上点击右键=>>TortoiseSVN=>> Delete删除,此方法也不是直接删除,而是将该文件或文件夹的状态置为删除,也需要我们使用SVN Commit提交到SVN服务器后才真正删除。
说明:实际上,从你把源代码迁签入SVN服务器开始,每一个版本的数据和文件,就算是你已经删除了的,也都可以随时迁出。
以上只是TortoiseSVN最简单的几个功能,其实他的功能远不止这些,其他的功能大家可以在使用的过程中慢慢体会,有些功能我会在下面的教程中使用到,到时候会和大家讲清楚用法。
注意:向SVN服务器提交源代码的时候,一定不要提交bin、obj等文件夹,否则会很麻烦。但是web项目的bin目录除外,但是web项目的bin目录中的引用其他项目而生成的dll不需要提交。
一个好习惯:如果项目中引用了其他的第三方的程序集,比如EnterpriseLibrary、FCKEditor等,这时候不要简单从他们的安装 位置引用,而是在你的解决方案下,添加一个Library的目录,把需要的程序集复制到这里,然后从Library目录引用!