《VisualSVN安装配置使用教程.ppt》由会员分享,可在线阅读,更多相关《VisualSVN安装配置使用教程.ppt(58页珍藏版)》请在金锄头文库上搜索。
1、VisualSVN 安装安装&配置配置&使用教程使用教程Schenker Shared Service (Nanking) Co Ltd.QA DepartmentElaine TaoApr 21, 2014前前 言言为什么要用为什么要用VisualSVN Server? 因为如果直接使用因为如果直接使用Subversion,那么在,那么在Windows 系统上,要想让它随系统系统上,要想让它随系统启动,就要封装启动,就要封装SVN Server为为windws service,还要通过修改配置文件来,还要通过修改配置文件来控制用户权限,另外如果要想以控制用户权限,另外如果要想以Web方式【方
2、式【http协议】访问,一般还要安装协议】访问,一般还要安装配置配置Apache,如果是新手,岂不是很头痛?,如果是新手,岂不是很头痛?而而VisualSVN Serve集成了集成了Subversion和和Apache,省去了以上所有的麻烦。,省去了以上所有的麻烦。安装的时候安装的时候SVN Server已经封装为已经封装为windws service,Apache服务器的配置服务器的配置也只是在图像界面上,指定认证方式、访问端口等简单操作;另外,用户权也只是在图像界面上,指定认证方式、访问端口等简单操作;另外,用户权限的管理也是通过图像界面来配置。限的管理也是通过图像界面来配置。Visual
3、SVN Server是免费的吗?是免费的吗?是的,是的,VisualSVN Server是免费的,而是免费的,而VisualSVN是收费的。是收费的。VisualSVN是是SVN的客户端,和的客户端,和Visual Studio集成在一起,集成在一起, VisualSvn Server是是SVN的的服务器端,包括服务器端,包括Subversion、Apache和用户及权限管理,优点在上面已经和用户及权限管理,优点在上面已经说过了。说过了。 安安 装装 过过 程程VisualSVN Server的安装的安装VisualSVN Server,最新更新版本是,最新更新版本是1.6.2,可以在这里下载
4、:,可以在这里下载:http:/ Server Documentation下载:下载:http:/ Server的安装的安装VisualSVN Server的安装的安装注意:注意:Server Port那里,默认端口有那里,默认端口有80/81/8080三个;如果最后面的三个;如果最后面的CheckBox被被选中,则表示使用安全连接【选中,则表示使用安全连接【https协议】,这是的端口只有协议】,这是的端口只有433/8433二个可用。二个可用。VisualSVN Server的安装的安装VisualSVN Server的安装的安装TortoiseSVN的安装的安装最新版本是最新版本是1.5
5、.5.14361,你可以在这里下载:,你可以在这里下载: http:/ 中文资料:中文资料: http:/ TortoiseSVN-1.5.5.14361-win32-svn-1.5.4.msi 程序,点击程序,点击Next,下面的截图顺序即为安装步骤:,下面的截图顺序即为安装步骤: TortoiseSVN的安装的安装TortoiseSVN的安装的安装TortoiseSVN的安装的安装TortoiseSVN的安装的安装配置和使用方法配置和使用方法VisualSVN Server的配置和使用方法的配置和使用方法安装好安装好VisualSVN Server后,运行后,运行VisualSVN Ser
6、ver Manger,下面是启动界面,下面是启动界面:VisualSVN Server的配置和使用方法的配置和使用方法添加一个代码库【添加一个代码库【Repository】:VisualSVN Server的配置和使用方法的配置和使用方法按上图所示,创建新的代码库,在下图所示的文本框中输入代码库名称:按上图所示,创建新的代码库,在下图所示的文本框中输入代码库名称:VisualSVN Server的配置和使用方法的配置和使用方法注意:上图中的注意:上图中的CheckBox如果选中,则在代码库如果选中,则在代码库StartKit下面会创建下面会创建trunk、branches、tags三个子目录;
7、不选中,则只创建空的代码库三个子目录;不选中,则只创建空的代码库StartKit。点击点击OK按钮,代码库就创建成功了。按钮,代码库就创建成功了。VisualSVN Server的配置和使用方法的配置和使用方法创建完代码库后,没有任何内容在里面。我会在这个教程的第二部分说明如何创建完代码库后,没有任何内容在里面。我会在这个教程的第二部分说明如何迁入源代码。迁入源代码。下面,我们开始安全性设置,在左侧的下面,我们开始安全性设置,在左侧的Users上点击右键:上点击右键:VisualSVN Server的配置和使用方法的配置和使用方法输入上面的信息,点击输入上面的信息,点击OK,我们就创建一个用户
8、了。按照上面的过程,分别添,我们就创建一个用户了。按照上面的过程,分别添加用户加用户Developer1、tester1、manager1,好了,我们开始添加这些用户到我,好了,我们开始添加这些用户到我们刚才创建的项目里:们刚才创建的项目里:VisualSVN Server的配置和使用方法的配置和使用方法点击图中的点击图中的Add.按钮,在下图中选择我们刚才添加的用户按钮,在下图中选择我们刚才添加的用户,点击点击OK按钮。按钮。说明:大家可能注意到了下图中的说明:大家可能注意到了下图中的Groups,是的,你也可以先创建组,把用户,是的,你也可以先创建组,把用户添加到各个组中,然后对组进行授权
9、,操作比较简单,在此略过。添加到各个组中,然后对组进行授权,操作比较简单,在此略过。VisualSVN Server的配置和使用方法的配置和使用方法VisualSVN Server的配置和使用方法的配置和使用方法按照下图所示,分别对用户【或组】进行授权:按照下图所示,分别对用户【或组】进行授权:VisualSVN Server的配置和使用方法的配置和使用方法因为用户因为用户starter在团队中是新来者,不希望他向代码库中提交新代码,所以他在团队中是新来者,不希望他向代码库中提交新代码,所以他只能读取代码库中的代码,不能提交代码。只能读取代码库中的代码,不能提交代码。tester1是测试人员,
10、不负责代码编是测试人员,不负责代码编写,所以也是只读权限。而写,所以也是只读权限。而Developer1和和manager1是开发人员和项目经理,是开发人员和项目经理,自然具有读、写的权限。自然具有读、写的权限。在实际的项目开发过程中,在实际的项目开发过程中,Developer和和tester往往不可能只有一个人,这时候往往不可能只有一个人,这时候使用组来授权更加方便,这个大家可以自己练习一下。使用组来授权更加方便,这个大家可以自己练习一下。TotoiseSVN的基本使用方法的基本使用方法签入源代码到签入源代码到SVN服务器服务器假如我们使用Visual Studio在文件夹StartKit中
11、创建了一个项目,我们要把这个项目的源代码签入到SVN Server上的代码库中里,首先右键点击StartKit文件夹,这时候的右键菜单如下图所示:TotoiseSVN的基本使用方法的基本使用方法点击点击Import,弹出窗体,其中,弹出窗体,其中http:/ 是服务器名,是服务器名,svn是代是代码仓库的根目录,码仓库的根目录,StartKit是我们在上个教程中添加的是我们在上个教程中添加的 一个代码库。一个代码库。TotoiseSVN的基本使用方法的基本使用方法点击点击OK按钮,会弹出下面的窗体,要求输入凭据按钮,会弹出下面的窗体,要求输入凭据TotoiseSVN的基本使用方法的基本使用方法
12、在上面的窗体中输入用户名和密码,点击在上面的窗体中输入用户名和密码,点击OK按钮按钮TotoiseSVN的基本使用方法的基本使用方法如上图所示,源代码已经成功签入如上图所示,源代码已经成功签入SVN服务器了。这时候团队成员就可以迁出服务器了。这时候团队成员就可以迁出SVN服务器上的源代码到自己的机器了。服务器上的源代码到自己的机器了。TotoiseSVN的基本使用方法的基本使用方法签出源代码到本机签出源代码到本机在本机创建文件夹在本机创建文件夹StartKit,右键点击,右键点击Checkout,弹出如下图的窗体,弹出如下图的窗体在上图中在上图中URL of Repository:下的文本框中
13、输入:下的文本框中输入svn server中的代码库的地址,中的代码库的地址,其他默认,点击其他默认,点击OK按钮按钮,就开始签出源代码了。就开始签出源代码了。TotoiseSVN的基本使用方法的基本使用方法说明:上图中的说明:上图中的Checkout Depth,有,有4个选项,分别是迁出全部、只签出下一个选项,分别是迁出全部、只签出下一级子目录和文件、只签出文件、只签出空项目,默认的是第一项。上面的例子级子目录和文件、只签出文件、只签出空项目,默认的是第一项。上面的例子中,我们也可以使用中,我们也可以使用web的方式访问代码库,在浏览器中输入的方式访问代码库,在浏览器中输入http:/ C
14、ommit弹出下面的窗体弹出下面的窗体在在Model文件夹上点击右键或在文件夹上点击右键或在Model文件下的空白处点击右键,点击文件下的空白处点击右键,点击SVN Commit弹出下面的窗体弹出下面的窗体TotoiseSVN的基本使用方法的基本使用方法点击点击OK按钮后,弹出如下图的窗体按钮后,弹出如下图的窗体TotoiseSVN的基本使用方法的基本使用方法添加新文件到添加新文件到SVN服务器服务器我们在Model文件下添加一个新的类文件UserInfo.cs,在Model文件下的空白处点击右键,点击SVN Commit,和上面讲的提交修改过的文件到SVN服务器一样,就可以了。另外也可以在文
15、件UserInfo.cs上点击右键,点击TortoiseSVN=Add,弹出如下图的窗体TotoiseSVN的基本使用方法的基本使用方法TotoiseSVN的基本使用方法的基本使用方法选中选中UserInfo.cs文件,点击文件,点击OK按钮,这样并没有将这个文件提交到按钮,这样并没有将这个文件提交到SVN服务服务器,只是将这个文件标记为源代码库库中的文件,并将其状态置为修改状态。器,只是将这个文件标记为源代码库库中的文件,并将其状态置为修改状态。之后,我们要再之后,我们要再SVN Commit这个文件一次,才可以将其真正提交到这个文件一次,才可以将其真正提交到SVN服务服务器上的代码库中。器
16、上的代码库中。 上面讲是添加文件,实际上,添加文件夹的步骤也是一样的,这里就不说了。上面讲是添加文件,实际上,添加文件夹的步骤也是一样的,这里就不说了。TotoiseSVN的基本使用方法的基本使用方法更新本机代码与更新本机代码与SVN服务器上最新的版本一致服务器上最新的版本一致这个也很简单,只要在需要更新的文件夹上点击右键或在该文件下的空白处点击右键,点击SVN Update,就可以了。注意:更新操作可能会因为版本冲突而失败,这是可以使用合并【Merge】或其他方法解决;也可能因为锁定【Get Lock】而失败,这是需要先解锁【Release Lock】。TotoiseSVN的基本使用方法的基
17、本使用方法重命名文件或文件夹,并将修改提交到重命名文件或文件夹,并将修改提交到SVN服务器服务器只要在需要重命名的文件或文件夹上点击右键,点击TortiseSVN=Rename,在弹出的窗体中输入新名称,点击OK按钮,就可以了。此方法也不是直接重命名,而是将该文件或文件夹的名称标记为重命名后名称,也需要我们使用SVN Commit提交到SVN服务器后才真正重命名。TotoiseSVN的基本使用方法的基本使用方法删除文件或文件夹,并将修改提交到删除文件或文件夹,并将修改提交到SVN服务器服务器最简单就是,你直接删除文件或文件夹,然后使用SVN Commit提交更新到SVN服务器。另外一种方法是在
18、你要删除的文件或文件夹上点击右键=TortoiseSVN=Delete删除,此方法也不是直接删除,而是将该文件或文件夹的状态置为删除,也需要我们使用SVN Commit提交到SVN服务器后才真正删除。说明:实际上,从你把源代码迁签入SVN服务器开始,每一个版本的数据和文件,就算是你已经删除了的,也都可以随时迁出。TotoiseSVN的基本使用方法的基本使用方法注意:向注意:向SVN服务器提交源代码的时候,一定不要提交服务器提交源代码的时候,一定不要提交bin、obj等文件夹,否等文件夹,否则会很麻烦。但是则会很麻烦。但是web项目的项目的bin目录除外,但是目录除外,但是web项目的项目的bi
19、n目录中的引用其目录中的引用其他项目而生成的他项目而生成的dll不需要提交。不需要提交。一个好习惯:如果项目中引用了其他的第三方的程序集,比如一个好习惯:如果项目中引用了其他的第三方的程序集,比如EnterpriseLibrary、FCKEditor等,这时候不要简单从他们的安装位置引用,等,这时候不要简单从他们的安装位置引用,而是在你的解决方案下,添加一个而是在你的解决方案下,添加一个Library的目录,把需要的程序集复制到这里,的目录,把需要的程序集复制到这里,然后从然后从Library目录引用目录引用。TotoiseSVN的基本使用方法的基本使用方法版本冲突解决版本冲突解决场景如下场景
20、如下TotoiseSVN的基本使用方法的基本使用方法解决冲突有三种选择:解决冲突有三种选择:nA、放弃自己的更新,使用svn revert(回滚),然后提交。在这种方式下不需要使用svn resolved(解决)nB、放弃自己的更新,使用别人的更新。使用最新获取的版本覆盖目标文件,执行resolved filename并提交(选择文件右键解决)。TotoiseSVN的基本使用方法的基本使用方法nC、手动解决:冲突发生时,通过和其他用户沟通之后,手动更新目标文件。然后执行resolved filename来解除冲突,最后提交。解决步骤如下:在当前目录下执行“update”(更新)操作Totois
21、eSVN的基本使用方法的基本使用方法在冲突的文件上(选中文件-右键菜单TortoiseSVNEdit conflicts(解决冲突),出现如下窗口Theirs窗口为服务器上当前最新版本Mine窗口为本地修改后的版本Merged窗口为合并后的文件内容显示TotoiseSVN的基本使用方法的基本使用方法如果要使用服务器版本,在Theirs窗口选中差异内容,右键,选择Use this text block(使用这段文本块)。同理如果要使用本地版本,在协商后,在Mine窗口右键,选择Use this text block(使用这段文本块)。TotoiseSVN的基本使用方法的基本使用方法修改完成后,保
22、存kingtuns.txt文件内容。在B用户的冲突目录下,选中文件-右键菜单TortoiseSVNResolved(解决)。会列出冲突的文件列表,如果确认已经解决,点OK。TotoiseSVN的基本使用方法的基本使用方法冲突解决TotoiseSVN的基本使用方法的基本使用方法提交解决冲突后的文件。TotoiseSVN的基本使用方法的基本使用方法如何降低冲突解决的复杂度:如何降低冲突解决的复杂度:n当文档编辑完成后,尽快提交,频繁的提交/更新可以降低在冲突发生的概率,以及发生时解决冲突的复杂度。n在提交时,写上明确的message,方便以后查找用户更新的原因,毕竟随着时间的推移,对当初更新的原因
23、有可能会遗忘n养成良好的使用习惯,使用SVN时每次都是先提交,后更新。每天早上打开后,首先要从版本库获取最新版本。每天下班前必须将已经编辑过的文档都提交到版本库。TotoiseSVN的基本使用方法的基本使用方法SVN更新失更新失败,提示,提示locked产生这种情况大多是因为上次svn命令执行失败且被锁定了,需要删除文件夹中的lock文件,即可解锁。这里介绍3种方法:方法一.直接进行cleanup;对较小的文件比较管用,文件稍大些等待时间很长或不起作用;方法二.选择文件,右键执行release lock;等待时间较长;方法三.手动删除锁定文件:1.在运行中输入cmd进入命令行;2.在命令提示符下cd 到svn项目出现问题的文件所在目录下;3.执行命令del lock /q/s 4.等待删除lock文件成功,重新更新SVN。Thank You!