SVN 版本服务器搭配全过程详解(含服务端、客户端)

SVN服务器端及客户端全套软件

SVN对比VSS的优势

两者区别:http://www.cnblogs.com/zxjyuan/archive/2011/12/07/2280042.html

源代码管理工具是开发人员使用非常频繁的生产工具,只有更好更快才能提高效率,不应仅局限于签入签出。

1、  是否允许同时修改一个文件。

VSS: 不可以。第一个人修改后即为锁定状态。

SVN: 可以。

在两人(多人)同时开发同一个模块时,修改到同一文件是非常常见的情况。但VSS同一文件不能并行开发,这种情况下另一人只能等着,或者只好把代码写入其它文件等人家做完了再转移过来,费时费力。

SVN 可并行开发,合并签入。 如特殊情况(某人需要大量修改,而其它人很少会改动),为了防止并行开发,也可以执行锁定再签出。

 
 

2、  是否提供比较功能。

VSS: 提供,但比较薄弱,易于出错而且不友好,很多情况下无法正常比较。

SVN: 提供,功能强大。

在完成修改要签入时,最好是能先检查修改了哪些代码再签入,这样可避免将错误的代码(或者测试部分的代码)签入。

在代码已签入后,如发现修改后的代码功能异常,此时也需要检查两次历史代码存在哪些差异。

所以代码比较功能是非常必要的。

3、  回退到历史版本。

VSS: 不可以。只能手工提取代码再覆盖。

SVN: 可以。有 Revert 功能轻松做到。

在代码已签入,但又出现问题时,SVN比较方便。

4、  客户端软件的使用。

VSS: 必须开启VSS 软件才能管理。

SVN: 只要给一个url(如:https://xxx/svn/demo)   选定一个文件夹,右键即可get代码。 已经get的文件夹, 修改文件后, 可以直接到所在文件夹中去操作。 正常文件与修改过的文件对比非常明显。

5、  在VS中修改较多文件后的情况。

VSS: 如果不在同一文件夹,管理比较麻烦。如右图:在多个不同的文件夹中签出的文件,非常容易遗忘签入。

SVN: 如下图

在VS 下方列出所有修改过的文件,并提供右键查看修改(Show Changes)、版本比较及签入等功能。

6、  开源

VSS: 否。一般是微软所属产品用,非微软产品使用不便。

SVN: 是。应用广泛, 无论是否微软产品。

在.net 代码和Java代码并存情况下,使用SVN 方便统一管理。

7、  支持命令行

VSS: 否

SVN: 是。

支持命令行, 可以简化许多操作。 如用VSS, 每个开发人员每天上午到公司时, 必须开启VSS 软件, 再鼠标操作。

用SVN则可写TortoiseProc 命令行,保存为bat批处理文件。要获取代码则双击写好的批处理文件即可。

最新文章

  1. erlang 健壮性
  2. Google C++单元测试框架GoogleTest---GTest的Sample1和编写单元测试的步骤
  3. 口水话 闭包中this的指向
  4. POJ 3687 Labeling Balls()
  5. Unity 区分不同平台
  6. 转: PE rva to raw 虚拟偏移地址和文件物理偏移地址
  7. Alice and Bob(贪心HDU 4268)
  8. C语言常用的小代码
  9. 26.68013 烧录方式 及iic生成
  10. skip-character-set-client-handshake 与 character-set-client-handshake
  11. 如何使用ASP.NET Web API OData在Oracle中使用Entity Framework 6.x Code-First方式开发 OData V4 Service
  12. linux:sed高级命令之n、N(转)
  13. Java笔记:Java 流(Stream)、文件(File)和IO
  14. linux下nginx【反向代理】配置【负载均衡】配置
  15. ES6躬行记(16)——Set
  16. 转 Redis 总结精讲 看一篇成高手系统-4
  17. 为什么要用 Node.js
  18. cmd打开E盘文件
  19. eclipse安装Hadoop-0.20.2插件
  20. jQuery事件绑定—on()、bind()与delegate()

热门文章

  1. 002 MIRO发票校验采购订单项目科目分配类别检查增强-20150819
  2. 2015.7.7——跌停板做T,就算要搏跌停反弹也要看卖一档压力啊
  3. LeetCode:整数转罗马数字【12】
  4. document.documentElement和document.body区别以及获取浏览器的宽高
  5. pyhton3 sys模块
  6. Kattis - prva 【字符串】
  7. python函数模拟mysql增删改查功能
  8. Mysql 主从复制搭建
  9. INSPIRED启示录 读书笔记 - 第20章 基本产品
  10. Go goroutine (协程)