局域网Visual SVN Server的简单配置方法

    对于公司内部合作的软件项目,在局域网内进行版本控制管理很有必要,方便项目组成员之间保持代码同步。

简单的Windows环境下的SVN 服务器很容易配置,比如VisualSVN Server这个软件,只一个几M的软件包,包含了建立服务器的所有构件,而且自动注册为系统自启动服务。

一、下载VisualSVN Server

我现在用的是2.5.3版本。在其官网下载。http://www.visualsvn.com/files/VisualSVN-Server-2.5.3.msi

二、安装

将其安装到局域网内用作服务器的主机上,似乎目前只支持到xp系统。【当然,这台服务器主机必须配置为固定IP,这就是路由里的事情了】

三、配置服务器端

1. 添加代码库(Repository)

安装好VisualSVN Server后,运行VisualSVN Server Manger,下面是启动界面:

局域网Visual SVN Server的简单配置方法_第1张图片

好的,下面我来添加一个代码库【Repository】,如下图:

按上图所示,创建新的代码库,在下图所示的文本框中输入代码库名称:

注意:上图中的CheckBox如果选中,则在代码库StartKit下面会创建trunk、branches、tags三个子目录;不选中,则只创建空的代码库StartKit。

点击OK按钮,代码库就创建成功了。【一个代码库里面可以管理多个项目源代码,在客户端可以自己添加子文件夹,不用麻烦的再来服务器电脑上操作,很方便啊】

创建完代码库后,没有任何内容在里面。 【注入源代码是客户端的事情了

2. 添加用户【Users】

下面,我们开始安全性设置,在左侧的Users上点击右键:

局域网Visual SVN Server的简单配置方法_第2张图片

局域网Visual SVN Server的简单配置方法_第3张图片

输入上面的信息,点击OK,我们就创建一个用户了。

3. 配置代码库的用户权限

下面要开始配置代码库的用户权限。选中代码库,“操作”-->“属性”中可以更改添加此代码库允许哪些用户访问,各有什么权限。

点击上图中的"Add..."按钮,在下图中选择我们刚才添加的用户,点击OK按钮:

说明:大家可能注意到了下图中的Groups,是的,你也可以先创建组,把用户添加到各个组中,然后对组进行授权,操作比较简单,在此略过。

按照下图所示,分别对用户【或组】进行授权:

局域网Visual SVN Server的简单配置方法_第4张图片

点击"确定"按钮,上面的用户就具有了访问StartKit代码库的不同权限。

因为用户starter在团队中是新来者,不希望他向代码库中提交新代码,所以他只能读取代码库中的代码,不能提交代码。tester1是测试人员,不负责代码编写,所以也是只读权限。而Developer1和manager1是开发人员和项目经理,自然具有读、写的权限。

四、迁入项目源代码到SVN服务器

假如我们使用Visual Studio在文件夹StartKit中创建了一个项目,我们要把这个项目的源代码签入到SVN Server上的代码库中里,首先右键点击StartKit文件夹,这时候的右键菜单如下图所示:

局域网Visual SVN Server的简单配置方法_第5张图片

点击Import,弹出下面的窗体,其中 http://zt.net.henu.edu.cn 是服务器名,svn是代码仓库的根目录,StartKit是一个代码库。

【如果是本地局域网的服务器,则服务器名应为:https://192.your.pc.ip/svn/StarKit 】

说明:左下角的CheckBox,在第一次签入源代码时没有用,但是,在以后你提交代码的时候是非常有用的。

局域网Visual SVN Server的简单配置方法_第6张图片

点击OK按钮,会弹出下面的窗体,要求输入凭据:

局域网Visual SVN Server的简单配置方法_第7张图片

在上面的窗体中输入用户名和密码,点击OK按钮:

局域网Visual SVN Server的简单配置方法_第8张图片

如上图所示,好了,源代码已经成功签入SVN服务器了。这时候团队成员就可以迁出SVN服务器上的源代码到自己的机器了。

在Visual Studio的SVN插件AnkhSVN中,过程与此屡有区别,注意大体步骤就可以了。

【添加-->代码库URL-->用户名密码-->确认Commit】

五、签出源代码到本机

在本机创建文件夹StartKit,右键点击Checkout,弹出如下图的窗体:

局域网Visual SVN Server的简单配置方法_第9张图片

在上图中URL of Repository:下的文本框中输入svn server中的代码库的地址,其他默认,点击OK按钮,就开始签出源代码了。

说明:上图中的Checkout Depth,有4个选项,分别是迁出全部、只签出下一级子目录和文件、只签出文件、只签出空项目,默认的是第一项。

搞定!源代码已经成功签出到刚才新建的StartKit目录中。

打开StartKit目录,可以看到如下图的文件夹结构:

局域网Visual SVN Server的简单配置方法_第10张图片

一旦你对文件或文件夹做了任何修改,那么文件或文件夹的显示图片机会发生变化。下图中我修改了其中的二个文件:

局域网Visual SVN Server的简单配置方法_第11张图片

大家看一下不同状态所对应的图片:

局域网Visual SVN Server的简单配置方法_第12张图片

我们已经知道怎么将源代码签入到SVN服务器,怎么从服务器签出代码到本机,也简单了解了不同状态所对应的图案啦。

六、提交修改过的文件到SVN服务器

上面的图中,我修改了位于Model文件中的二个文件ImageInfo.cs和NewsInfo.cs,下面演示如何提交到SVN服务器。

注意:提交源代码到服务器时,一定确保本机的代码是最新版本,否则可能提交失败,或者造成版本冲突。

在Model文件夹上点击右键或在Model文件下的空白处点击右键,点击SVN Commit…弹出下面的窗体:

局域网Visual SVN Server的简单配置方法_第13张图片

点击OK按钮后,弹出如下图的窗体:

局域网Visual SVN Server的简单配置方法_第14张图片

七、添加新文件到SVN服务器

我们在Model文件下添加一个新的类文件UserInfo.cs,在Model文件下的空白处点击右键,点击SVN Commit…,和上面讲的提交修改过的文件到SVN服务器一样,就可以了。

另外也可以在文件UserInfo.cs上点击右键,点击TortoiseSVN=>>Add,弹出如下图的窗体:

局域网Visual SVN Server的简单配置方法_第15张图片

选中UserInfo.cs文件,点击OK按钮,这样并没有将这个文件提交到SVN服务器,只是将这个文件标记为源代码库库中的文件,并将其状态置为修改状态。之后,我们要再SVN Commit这个文件一次,才可以将其真正提交到SVN服务器上的代码库中。

上面讲是添加文件,实际上,添加文件夹的步骤也是一样的,这里就不说了。

八、更新本机代码与SVN服务器上最新的版本一致

这个也很简单,只要在需要更新的文件夹上点击右键或在该文件下的空白处点击右键,点击SVN Update,就可以了。

注意:更新操作可能会因为版本冲突而失败,这是可以使用合并【Merge】或其他方法解决;也可能因为锁定【Get Lock】而失败,这是需要先解锁【Release Lock】。

九、重命名文件或文件夹,并将修改提交到SVN服务器

只要在需要重命名的文件或文件夹上点击右键,点击TortiseSVN=>& gt;Rename…,在弹出的窗体中输入新名称,点击OK按钮,就可以了。此方法也不是直接重命名,而是将该文件或文件夹的名称标记为重命名后名称,也 需要我们使用SVN Commit提交到SVN服务器后才真正重命名。

十、删除文件或文件夹,并将修改提交到SVN服务器

最简单就是,你直接删除文件或文件夹,然后使用SVN Commit提交更新到SVN服务器。另外一种方法是在你要删除的文件或文件夹上点击右键=>>TortoiseSVN=>> Delete删除,此方法也不是直接删除,而是将该文件或文件夹的状态置为删除,也需要我们使用SVN Commit提交到SVN服务器后才真正删除。

说明:实际上,从你把源代码迁签入SVN服务器开始,每一个版本的数据和文件,就算是你已经删除了的,也都可以随时迁出。

十一、使本地源代码摆脱版本控制

这个操作一般不会用到,除非是代码库发生了位置或配置改变后,我们可能需要将本地源代码迁入新的代码库。

摆脱版本控制的方法很简单,将本地源码目录下的.svn文件夹删除即可。【这是隐藏文件哦】

总结:

以上只是TortoiseSVN最简单的几个功能,其实他的功能远不止这些,其他的功能大家可以在使用的过程中慢慢体会,有些功能我会在下面的教程中使用到,到时候会和大家讲清楚用法。

注意:向SVN服务器提交源代码的时候,一定不要提交bin、obj等文件夹,否则会很麻烦。但是web项目的bin目录除外,但是web项目的bin目录中的引用其他项目而生成的dll不需要提交。

一个好习惯:如果项目中引用了其他的第三方的程序集,比如 EnterpriseLibrary、FCKEditor等,这时候不要简单从他们的安装位置引用,而是在你的解决方案下,添加一个Library的目 录,把需要的程序集复制到这里,然后从Library目录引用,这样有什么好处,想一想吧!


【原作者:Forrest Zhang(http://www.anycoders.com)】【本人做了少量修改,原作者博客里总结了项目管理的一系列教程】
出处:http://ttzhang.cnblogs.com/
本博原创文章版权归博客园和本人共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出作者名称和原文连接,否则保留追究法律责任的权利。


你可能感兴趣的:(SVN,server,fckeditor,服务器,library,tortoiseSVN)