BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

Rails存储库从SVN转向Git

| 作者 高昂 关注 1 他的粉丝 发布于 2008年4月4日. 估计阅读时间: 4 分钟 | QCon上海2018 关注大数据平台技术选型、搭建、系统迁移和优化的经验。

在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库托管一文。

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

真先进 by sen firefly

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

windows vs unix by xu bobo

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

Re: windows vs unix by withyou gakaki

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

Re: 真先进 by Rory Ye

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

Re: 真先进 by 纪 洪森

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

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

5 讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT