代码管理_SVN_搭建SVN_Server

无论是个人进行单独编码还是团体开发项目,项目的版本控制都是很重要的。就我所知的版本控制方式有两种。

  1. 最简单的版本控制就是保留软件不同版本的数份copy,并且适当编号。许多大型开发案都是使用这种简单技巧。虽然这种方法能用,但是很没效率。一是因为保存的数份copy几乎完全一样,也因为这种方法要高度依靠开发者的自我纪律,而常导致错误。
  2. 使用版本控制工具。常用的windows平台下的版本控制工具有svn,cvs,vss。

如果您还没有用过版本控制工具构建项目管理,本文将带你快速入门,本文使用的工具是基于svn的。

  • 必备软件(这些软件目前是比较新的版本)
  1. tortoiseSVN 1.65
  2. Visual SVN Server 2.11(Visual SVN Server是自带Subversion和Apache的)
  3. Visual SVN 1.77Crack破解(Visual Studio插件)
  4. SVN电子书(可选,如果想深入了解SVN,可以一读)

如果以上文件不能下载,请访问http://cid-d61a87db430d0cab.skydrive.live.com/browse.aspx/.Public/svn这个地址,下载文件都放在这里了。

  • 安装过程

tortoiseSVN和Visual SVN的安装过程我就不赘述了,下面主要讲Visual SVN Server的安装过程。
01 02

下面的步骤就是next和install了。到此,软件环境就准备好了。

  • 如何创建一个使用版本控制的Hello World项目

1.建立SVN服务器版本库(Create Repository)

  •  
    • 创建用户

      05 
      07
    • 创建版本库

      03 04
    • 分配权限

       08 
      09

2.把项目导入到服务器版本库中(Import project to repository)

10 1112131415 

3. 客户端签出项目(check out the project)

16 17 

签出以后,可以看到每个文件前都有绿色的小图标

18 
19


<div arial"="" style="margin: 0px; padding: 0px; font-size: 1.1em;">作者: Sunny Peng
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
TortoiseSVN-1.6.15版 svn apache 服务器 配置步骤: 1, httpd-2.2.16-win32-x86-openssl-0.9.8o.msi   除了端口设置以外,其他的请按照常识设置,其中端口我改为了 9999 。   随个人喜好吧,但尽量设置 5000 以上的端口号,最好不要用默认80 端口,因为这个端口很容易被其他的软件占用,造成冲突,使 Apache 无法启动服务。   我已经尝试过,这里友情提示。^_^   安装成功之后,尝试启动服务,在任务栏那里应该有一个 Apache Monitor,双击打开,点击 Start 按钮,如果亮了绿灯,表示成功安装。 2, Subversion-v1.5.2-Setup-en-us.msi   一路Next下去,默认设置安装即可。没任何报错,就安装成功了。 3, TortoiseSVN-1.6.3.16613-win32-svn-1.6.3.msi   一路next下去,默认设置安装即可,正确安装完会要求重启。OK,重启。 4, 检查 Apache 安装目录下的 \modules 下是不是已经有了 mod_dav_svn.so 和 mod_authz_svn.so。 5, 检查 Apache 安装目录下的 \modules 下是不是已经有了 libdb44.dll(或者是 libdb52.dll )。 6, 检查 Apache 安装目录下的 \bin 下是不是有 libeay32.dll 和 ssleay32.dll。   注意:步骤4,5,6中,如果在 Apache 相应的目录下没有找到这些文件,可以从 Subversion 安装目录中的 \bin 下拷过来,直接放到 Apache 相应的文件夹中即可。 7, 配置 Apache 安装目录下的 \conf\httpd.conf   <1>查找:   #LoadModule dav_module modules/mod_dav.so   #LoadModule dav_fs_module modules/mod_dav_fs.so   将#号去掉,改为:(注意:每行开始不要有空格)   LoadModule dav_module modules/mod_dav.so   LoadModule dav_fs_module modules/mod_dav_fs.so   如果找不到上边两句,可直接把上边没#号的两行添加到文件中那一堆LoadModule后边。   <2>在文件中的一堆LoadModule后边添加如下两句:(注意,每行开始最好不要有空格)   LoadModule dav_svn_module modules/mod_dav_svn.so   LoadModule authz_svn_module modules/mod_authz_svn.so   <3>这一步是配置你的 SVN 版本库(Repository)目录以及从浏览器访问其的 URL 或 URI 。   在 httpd.conf 的结尾,添加如下字段: <Location /svn>   DAV svn SVNListParentPath on SVNParentPath C:\SVN AuthType Basic AuthName "Subversion repositories" AuthUserFile C:\SVN\conf\passwd </Location>   注意:这里 /svn 是指客户端访问时 URI 的一部分,比如: svn://localhost:9999/svn/ 或者 svn://127.0.0.1:9999/svn/ 。   另外有的客户端不要 URI,要 URL,那就 http://localhost:9999/svn/ 可以了。   如果是本机或者是内部局域网,直接点击 "浏览按钮" -_-   下边的 C:\SVN (按照个人喜好自己建立,建议文件夹名称:英文无空格)就是版本库(Repository)的路径。   最后一行是设置密码用的,后面再说。 8, 配置资源库   建立文件夹,就是上边配置的那个C:/SVN,打开文件夹后右击会出现 TortoiseSVN , 点它,选择 “在此创建版本库”,如果有其它选项,默认就行。   成功的话,文件夹里多了以下两个文件和四个文件夹:      文件夹:conf, db, hooks, locks      文件:format, README.txt 9, 重启 Apache,如果重启失败,请确认 4. 5 .6. 7 你是否正确。 10, 通常这个时候 SVN 服务器已经搭建成功了,访问 http://localhost:9999/SVN/ 是不是有内容了?
版本控制管理信息修改的艺术,它一直是程序员最重要的工具,程序员经常会花时间作出小的修改,然后又在某一天取消了这些修改,想象一下一个开发者并行工作的团队 - 或许是同时工作在同一个文件!- 你就会明白为什么一个好的系统需要管理潜在的混乱。   什么是 TortoiseSVN?   TortoiseSVN 是 Subversion 版本控制系统的一个免费开源客户端,可以超越时间的管理文件和目录。文件保存在中央版本库,除了能记住文件和目录的每次修改以外,版本库非常像普通的文件服务器。你可以将文件恢复到过去的版本,并且可以通过检查历史知道数据做了哪些修改,谁做的修改。这就是为什么许多人将 Subversion 和版本控制系统看作一种“时间机器”。   某些版本控制系统也是软件配置管理(SCM)系统,这种系统经过精巧的设计,专门用来管理代码树,并且具备许多与软件开发有关的特性 - 比如,对编程语言的支持,或者提供程序构建工具。不过 Subversion 并不是这样的系统;它是一个通用系统,可以管理任何类型的文件集,包括源代码。   TortoiseSVN 的历史   在2002年,Tim Kemp 发现 Subversion 是一个很好的版本控制系统,但是没有好的图形化客户端,创建一个作为 Windows 外壳集成的 Subversion 客户端的创意来自 TortoiseCVS,一个非常类似的 CVS 客户端。   Tim 学习了 TortoiseCVS 的源代码,将其作为 TortoiseSVN 的基础,然后开始这个项目,注册了域名 tortoisesvn.org,并将源代码提交到网上。此时 Stefan Küng 正在寻找一个好的免费版本控制系统,他发现了 Subversion 和 TortoiseSVN,由于 TortoiseSVN 还不能够使用,他加入了这个项目并开始编程。很快他便重写了大多数代码,并且开始添加命令和特性,此时,最初的代码都已经不复存在了。   随着 Subversion 越来越稳定,吸引了越来越多的用户开始使用 TortoiseSVN 作为他们的 Subversion 客户端。用户群增长迅速(每天都持续增长)。Lübbe Onken 提供了许多漂亮图标和 TortoiseSVN 的 logo,细心照料网站并且管理翻译。   TortoiseSVN 的特性   是什么让 TortoiseSVN 成为一个好的 Subversion 客户端?下面是一个简短的特性列表。   外壳集成   TortoiseSVN 与Windows 外壳(例如资源管理器)无缝集成,你可以保持在熟悉的工具上工作,不需要在每次使用版本控制功能时切换应用程序。   并且你不一定必须使用 Windows 资源管理器,TortoiseSVN 的右键菜单可以工作在其他文件管理器,以及文件/打开对话框等标准的 Windows 应用程序中。你必须牢记,TortoiseSVN 是有意作为 Windows 资源管理器的扩展开发,因此在其他程序可能集成的并不完整,例如重载图标可能不会显示。   重载图标   每个版本控制的文件和目录的状态使用小的重载图标表示,可以让你立刻看出工作副本的状态。   Subversion 命令的简便访问   所有的 Subversion 命令存在于资源管理器的右键菜单,TortoiseSVN 在那里添加子菜单。   因为 TortoiseSVN 是一个 Subversion 客户端,我们也很愿意为你展示一些 Subversion 本身的特性:   目录版本控制   CVS 只能追踪单个文件的历史,但是 Subversion 实现了一个“虚拟”文件系统,可以追踪整个目录树的修改,文件和目录都是版本控制的,结果就是可以在客户端对文件和目录执行移动和复制命令。   原子提交   提交要么完全进入版本库,要么一点都没有,这允许开发者以一个逻辑块提交修改。   版本控制的元数据   每个文件和目录都有一组附加的“属性”,你可以发明和保存任意的键/值对,属性是版本控制的,就像文件内容。   可选的网络层   Subversion 在版本库访问方面有一个抽象概念,利于人们去实现新的网络机制,Subversion 的“高级”服务器是 Apache 网络服务器的一个模块,使用 HTTP 的变种协议 WebDAV/DeltaV 通讯,这给了 Subversion 在稳定性和交互性方面很大的好处,可以直接使用服务器的特性,例如认证、授权、传输压缩和版本库浏览等等。也有一个轻型的,单独运行的 Subversion 服务器,这个服务器使用自己的协议,可以轻松的用 SSH 封装。   一致的数据处理   Subversion 使用二进制文件差异算法展
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值