InfoQ

新闻

Rails存储库从SVN转向Git

作者 高昂 发布于 2008年4月3日 上午12时16分

社区
Ruby
主题
Ruby on Rails
标签
Subversion,
Rails

在Ruby on Rails 2.1版本发布的前夕,Rails开发团队也准备将代码的存储库从Subversion迁移到Git之上。在Ruby on Rails的官方博客里,DHH写到

我们准备将Rails开发的代码存储库从Subversion迁移到Git之上,迁移过程将会在近期内完成。并且会使用Github来帮助开发者进行协作。在版本存储库迁移的同时,我们也会将问题跟踪系统转移到基于Rails开发的Lighthouse应用之上,于是到目前为止,我们的存储库和问题跟踪系统都是使用的Rails应用,这对我们是一个很好的鼓励。

在代码存储库迁移之后,我们将冻结现有Subversion的存储库以及Trac问题跟踪系统。这两个系统都会保留较长一段时 间,但是我们并不建议使用者再去访问它们。这意味着我们的Subversion存储库依然可以访问,但是如果你想获得最新的代码,需要在新的Git存储库 上更新。

为了帮助使用者更快的适应存储库系统的迁移,DHH同时也推荐了SVN使用者的Git快速上手教程。在对DHH声明的评论中,大部分开发者对此表示了赞赏与支持。其中,Scott Chacon为其他开发者推荐了为计算机科学家准备的Git介绍一文,文中讲解了当Git命令执行时,Git是究竟如何帮助我们处理工作的。Scott认为,了解Git是如何工作的,对于正确的使用Git有着积极的意义。

Git是Linus Torvalds为Linux内核开发而专门打造的版本控制软件,更加关注在管理大型项目时,代码版本的更新速度、效率以及可用性方面的提升,并为非线性 的协作开发提供良好的支持。Git帮助开发者保留历史版本在本地的全部记录,同时大型项目管理方面,效率比一般的版本控制工具都要高。在Linux内核开 发的版本控制中,Git发挥了积极的作用,Linus对其的评价是“傻瓜式的内容跟踪工具”。

Git基于GNU General Public License v2协议开放源代码。目前已从Linus Torvalds移交给Junio C Hamano维护。Git目前最新的版本是1.5.4.5,这个版本在之前的版本基础上修改了十多处Bug,并且对于部分文档进行了更新。

目前,Git也获得越来越多国内开发者的认可,并在项目开发中尝试使用Git来进行源代码的版本控制管理工作。对于使用Git所带来的好处,国内的开发者Robin Lu在Blog中这样评价道

初始化非常方便...对于随便写两行代码就要放到SCM里的人来说,再合适不过。将Git用作备份系统,或 者同步两台机器文档来使用,都很方便。Git的绝大部分操作都在本地完成,不用和集中的SCM服务器交互,使用者可以放心的随时随地提交代码。在Git 中,分支管理更为容易,无论是建立新的分支,还是在分支之间切换,仅有一条命令就可以完成,不需要建立多余的目录。除此之外,分支之间合并时,不仅代码会 合并在一起,Check In的历史也会保留下来。

目前,包括Rails在内,已经有不少知名项目已经迁移到Git之上来进行源代码版本管理,比如RubiniusMerb、Wine、 U-boot、Beryl等项目。尽管Git的命令繁多,但不少开发者为Git编写了小的脚本与批处理程序,进一步让Git命令的使用变得更加方便快捷, 并且对开发者更为友好。同时,基于Rails开发的Git存储库托管工具GitHub,也为开发者带来了更为方便的协作模式,关于GitHub的细节报 道,请阅读InfoQ中文站GitHub:基于Rails的Git库托管一文。

真先进 发表人 firefly sen 发表于 2008年4月5日 上午6时7分
windows vs unix 发表人 bobo xu 发表于 2008年4月5日 上午8时31分
Re: windows vs unix 发表人 gakaki withyou 发表于 2008年4月5日 上午10时6分
Re: 真先进 发表人 Ye Rory 发表于 2008年4月7日 上午12时30分
Re: 真先进 发表人 洪森 纪 发表于 2008年4月7日 下午8时9分
  1. 返回顶部

    真先进

    2008年4月5日 上午6时7分 发表人 firefly sen

    真是先进。Git是Linux一直用的版本管理工具。^_^~~好像很少有项目使用啊。ror总是玩新鲜的。

  2. 返回顶部

    windows vs unix

    2008年4月5日 上午8时31分 发表人 bobo xu

    unix 效率高吧! windows bug多吧! 但是为什么一般人喜欢用windows! 不是东西好就会占有市场! struts webwork也如此哈! 觉得ROR简直不可理解。 ROR目前主要是中小型项目【至少中国如此】我觉得CVS就可以,没有必要高git!增加程序员负担哈! 为什么有RUP还会有XP,AGILE 也许未来会有xp cvs ,svn~

  3. 返回顶部

    Re: windows vs unix

    2008年4月5日 上午10时6分 发表人 gakaki withyou

    在你发这些回复的时候,我已经从git上获取源代码了。 不要害怕,就和学自行车,学开摩托一样,这是 体验刺激而已。多一个免费的放源代码的地方有啥不好的

  4. 返回顶部

    Re: 真先进

    2008年4月7日 上午12时30分 发表人 Ye Rory

    Linux下的项目用git的也不少啊。只是做java项目的用的人应该很少。 Gentoo里很多项目都是用git的。

  5. 返回顶部

    Re: 真先进

    2008年4月7日 下午8时9分 发表人 洪森 纪

    git不错,应该试试分布式的版本管理了,JAVA方面大部分全是SVN,CVS。 用SVN的可以尝试一下SVK,学习成本还能低些。git在WINDOWS方面不如LINUX下好。

深度内容

和Google互补的搜索引擎Wolfram|Alpha

Wolfram|Alpha与Google究竟是什么关系,Wolfram|Alpha自己是如何定位的?Wolfram|Alaph在多大程度上是语义网搜索呢?InfoQ中文站就等等这些问题采访了Wolfram研究公司中国区商务经理王翔。

SOA契约成熟度模型

本文说明了所推荐的契约版本管理设计策略是如何与SOA成熟度模型发生联系的。文章目的是为实现版本管理和可组合性提供一个路线图。

数据服务简介

Vijay Narayanan在这篇文章中对数据服务的几个方面进行了介绍,它们都是SOA实践者和数据架构师感兴趣的内容。本文对数据服务的几个方面进行了介绍,包括需求定义,基本原理和好处、范围、开发以及消费模式。

分块云计算

在本文中,Jimmy Nilsson描述了一种他在过去数年间观察到的一种正在缓慢成长的架构风格,他把这种风格称为“分块云计算”。

豆瓣网技术架构变迁

罗马不是一天建成的,豆瓣的技术架构也是随着用户规模的增长一直在持续变化中。在本次演讲中,豆瓣的首席架构师洪强宁将与大家一起分享从上线时的单台服务器架构开始一直到现在的豆瓣架构变迁历程。

融合思想:深入探索S#arp架构

Billy McCafferty展示了S#arp架构,它在ASP.NET MVC框架的基础上,荟萃了当今的最佳实践,应用在ASP.NET Web应用程序的架构设计中。

王雷谈开源以及新兴市场计划

中国作为新兴市场中的新兴市场,是Sun在美国之外实施SSE(SUN Startup Essentials)项目重点关注的地区。在QCon Beijing 2009期间,InfoQ中文站有幸对此项目的负责人王雷先生进行了采访,探讨了关于开源、新兴市场、SSE等话题。

使用HTML5构建下一代的Web Form

HTML5 是由 WHATWG发起的,最开始的名称叫做Web Application 1.0,而后这个标准吸纳了Web Forms 2.0的标准,并一同被W3C组织所采用,合并成为下一代的HTML5标准。