Subversion 中文社区项目进展

  • 高昂

2008 年 7 月 26 日

话题:敏捷文化 & 方法

开源版本控制工具Subversion的 1.5 版本已经发布。与此同时,官方文档《使用 Subversion 进行版本控制》针对 Subversion 1.4 的文档翻译工作已经完成,针对于 1.5 版本的中文翻译计划也已经展开,目前最新的中文版将随时在Subversion 中文站进行更新。

除了官方文档的翻译之外,Subversion 的官方 FAQ 以及 TortoiseSVN 和 TortoiseMerge 的文档中文化工作也已经陆续展开,项目涉及到的源代码会随时在Google 源代码库中更新。

就 Subversion 中文站社区项目的启动和发展,翻译计划发起人孙岱军谈到:



有志于开源工作的人还是很多的,就像我们的那个团队,很快就有几十人报名参加,我甚至一下子找不到合适的文章让大家翻译,后来又引入了其他几个翻译。首先说一下Submerged 中文版翻译 ,这个 Blog 的翻译以前是我自己搞得,很辛苦,现在主要由 racoonwise 负责,很感谢他的辛勤劳动,这样大家能看到最新的几个 Subversion 专家 Blog 的中文翻译。还有就是 Scmbug 的翻译,Scmbug 是继承 SCM 和 Issue Track 的工具,前一段我做过一些研究,感觉所有的集成工具中,Scmbug 是最强大和规范的,所以我觉得可以给大家一个更好了介绍,除了 Scmbug 文档的翻译,后面我们还会给出其它 Issue Track 集成的介绍。

不过像所有的开源活动一样,最大的问题就是你不能要求别人做什么,一切要靠大家自己的自觉,所以很多事情经常是虎头蛇尾。很多人加入后,领了任务,可是迟 迟不见动手,或者做了一半就因为个人原因而中断工作。所以有一个组织还好一点,能够保持所有的工作能够在组织范围里持续下去,不会因为某个成员的原因造成 某个事情的中断,这也是我觉得进行这种翻译组织的原因。

现在网上有很多人有各种各样的热情,可以看到很多人会在自己的 blog 里翻译什么东西,值得赞赏,不过这些东西很多没有发挥最大的作用,例如很多翻译没有 版本,大家不知道有没有过时,有时候别人想继续某个翻译,可是找不到原来翻译的源文件,造成了我们网络上信息的混乱。还有就是这个世界上转贴的问题,太多 的垃圾内容,让真正的有价值信息也变成了垃圾。



作为成熟稳定的版本管理系统工具,Subversion 在国内的项目开发中拥有者大量的使用者。就 Subversion 在国内软件开发项目的版本控制中所起到的作用,Subversion 中文站创始人孙岱军谈到:

应该说国内越来越多的企业开始采用 Subversion 作为版本控制工具,我最近为几个通讯行业的软件企业进行过咨询,这几个企业可能都会有上千人的开发 团队,都有着比较规范的开发过程,有的以前使用 ClearCase,有的是 CVS,但是对于采用 Subversion 都有类似的担忧。例如性能,应该说除了开源社区以外,中国在任何领域的规模是最大的,所以对于性能有更多的关注,这里可以参考的 Apache 基金会的版本库,Apache 基金会所有的项目存 放在一个库中,目前有 60 万个修订,每天有超过 100 个新修订。

国内也有一些企业已经采用了多年的 Subversion,其中一些库的规模也超过 100G,运行也基本正常。安全性,主要是两方面,一方面是物理数据的,昨天看到一个有意思的事情, 一个魔兽世界插件项目,丢失了 6 个月的数据,呵呵,我想这证明了备份的重要性,好在 Subversion 的备份很好操作,还有我觉得要说的就是实际上版本 文件的格式还是比较容易理解的,便于我们 hack 文件;另一方面就是认证和授权,除了 Subversion 本身的权限控制模块,还要依赖 hook。还有一 个比较重要的方面,就是管理员的易用性上,Subversion 本身有很多不足,这通常依赖于许多第三方的工具,不过大多数工具还是基于开源的需求,对于 企业需求还不太够。再就是和其他工具的集成方面,例如和需求跟踪的集成方面,很多工具目前还只是实现最简单的集成。

还有我想强调的就是,Subversion 只是版本控制工具,还不是配置管理工具。如果你的团队只有几十个人,开发过程不是很复杂,那么采用 Subversoin 会比较容易。但是如果我们是超过百人的团队,开发有严格的流程何权限管理,那么要采用 Subversion,还是需要下不少功夫的。



目前,随着 Git 的成熟与普及,也从 Subversion 使用者阵营中获取了不少用户,比如 Ruby on Rails 的存储库也已经从 SVN 转向 Git,并且基于 Rails 开发的 Git 存储库托管工具 GitHub,也为开发者在 Git 使用中带来了更多便捷。尽管 Git 在 Window 下使用起来还不像在 Linux 下那样让 Git 如鱼得水,但无疑,Git 以其强大的功能正在博得越来越多使用者的青睐,就此,孙岱军谈到:

与 Git 等分布式版本控制工具,Subversion 更符合企业级开发的要求。例如安全性,Subversion 具备比较严格的权限控制能力,也避免了分 布版本控制工具让每个用户建立自己的本地库。Subversion 的学习成本要低很多,主要因为使用了与 CVS 基本一致的版本控制模型和命令。再就是客户 端的支持上,几乎在所有流行的操作系统和 IDE 中都有了对 Subversion 的支持。Subversion 开发团队也正是看到了企业级开发这一点,所以 1.5 版本添加了许多企业级急需的特性,例如分目录的版本文件、合并跟踪、通过代理写等。

所以就像 Subversion 开发者Collins-Sussman 所说的:Subversion 改变了是 80% 的普通开发者的习惯,而 20% 的所谓专业开发者早已经分布式版本控制工具的怀抱。Subversion 更多的是改变了企业开发,而不是开源开发,这一点很有意思,不过也证明了开源软件对企业软件开发的影响力。



感兴趣 Subversion 中文社区项目的开发者可以加入Subversion 中文站讨论组或直接在Subversion 开发邮件列表中与 Subversion 的爱好者进行交流。或者加入 Subversion 的官方网站的Tigris 社区,在交流中将 Subversion 相关的知识分享给更多的开发者,来使这款优秀的版本管理工具发挥更大的作用。
敏捷文化 & 方法